Express框架下搭建GraphQL API

需要先下载apollo-server-express,apollo-server-express是Express框架下,用于构建GraphQL服务的中间件,属于Apollo Server的一部分:

npm install apollo-server-express

随后在index.js添加 apollo-server-express包:

const {ApolloServer, gql} = require('apollo-server-express');

完整版index.js 文件:
原版 server.graphqlPath 在 Apollo Server 3 中被弃用,在 console.log  语句中直接使用中间件路径 /api并增加await server.start()函数。

const express = require('express');  
const { ApolloServer, gql } = require('apollo-server-express');  
const port = process.env.PORT || 8080;  const typeDefs = gql`  type Query {  hello: String  }  
`;  
const resolvers = {  Query: {  hello: () => 'Hello world!',  },  
};  const app = express();  (async () => {  const server = new ApolloServer({  typeDefs,  resolvers,  });  // 等待 Apollo Server 启动  await server.start();  server.applyMiddleware({ app, path: '/api' });  app.listen({ port }, () => {  console.log(`GraphQL server is running at http://localhost:${port}/api`);  });  
})();

在浏览器输入http://localhost:8080/api,打开后如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/11851.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

免杀的基本概念

木马的本质就是shellcode,免杀就是反病毒技术(杀毒软件),它指的是一种使病毒木马免于被杀软 查杀的技术,由于免杀技术的涉猎范围非常广,其中包含汇编、逆向工程、系统漏洞(C/C)等和可…

找不到iutils.dll怎么解决,需要如何修复

iutils.dll 是一个系统级的动态链接库(Dynamic Link Library)文件,通常与Windows操作系统中的应用程序运行密切相关。动态链接库文件如同一个代码库,存储了多个程序可以共享的功能和指令。iutils.dll具体提供了哪些功能可能依据它…

javascript 实现 阻塞/睡眠/耗时 几秒

有时前端想实现 代码停止几秒再执行后续代码,可能会受到异步执行的困扰。 那下面的方法就可以实现同步阻塞的效果,把阻塞的代码放到blockForThreeSeconds().then(()中即可 //阻塞2秒函数function blockForThreeSeconds() {return new Promise(resolv…

嵌入式学习——51单片机——(UART串口通信)day18

1. 单片机中的串口通信—51单片机中串行t通信的波特率发生器由定时器1来产生—() 电脑发送USB信号 单片机发送TTL信号 1.1 单片机向电脑发送信息 单片机由P3.1 TxD 向电脑发送TTL电平信号,TTL信号经过CH340转化为USB信号发送到电脑上 1.2 …

LeetCode 每日一题 ---- 【2244.完成所有任务需要的最少轮数】

LeetCode 每日一题 ---- 【2244.完成所有任务需要的最少轮数】 2244.完成所有任务需要的最少轮数方法:哈希表贪心 2244.完成所有任务需要的最少轮数 方法:哈希表贪心 用哈希表统计每个等级出现的次数 每次处理优先消费 3 个,m % 3 后&#…

20240514金融读报:超长期特别国债金融消费者保护服务平台数据资产与AIRPA流程

1、发行超长期特别国债支持“两重”建设(国家重大战略实施和重点领域安全能力建设) 2、金融消费者保护服务平台上线试运行,开通投诉处理和纠纷调解两项功能 3、万亿元超长期特别国债将呈现小额频发的特点。作用:他通过扩充政府融资…

使用yocto进行linux开发有什么优势? 使用yocto开发linux为什么不用关心硬件?

原文链接:https://blog.csdn.net/weixin_43435675/article/details/131373308 当你拿到一块新的开发板时,你需要先确定这块开发板的型号和芯片类型。可以通过查看开发板上的标识、参考手册或者厂商提供的相关信息来获取。 配置Yocto需要完成以下几个步…

百度文心一言 java 支持流式输出,Springboot+ sse的demo

参考&#xff1a;GitHub - mmciel/wenxin-api-java: 百度文心一言Java库&#xff0c;支持问答和对话&#xff0c;支持流式输出和同步输出。提供SpringBoot调用样例。提供拓展能力。 1、依赖 <dependency> <groupId>com.baidu.aip</groupId> <artifactId…

【Java应用】Java提取B站视频教程详情(完整代码|下载可直接运行|自带页面|可直接复制)

提取B站视频教程详情 背景 B站这个视频列表是真的体验感太差了,有时候想把章节复制下来,再对应的章节下面做笔记,实在是太难搞了,于是就有了这篇文文章 效果图 根据关键字获取视频id public Result videoList(RequestBody VideoDto videoDto) {String keyword videoDto.get…

ArcGIS10.2能用了10.2.2不行了(解决)

前两天我们的推文介绍了 ArcGIS10.2系列许可到期解决方案-CSDN博客文章浏览阅读2次。本文手机码字&#xff0c;不排版了。 昨晚&#xff08;2021\12\17&#xff09;12点后&#xff0c;收到很多学员反馈 ArcGIS10.2系列软件突然崩溃。更有的&#xff0c;今天全单位崩溃。​提示许…

动态代理技术应用场景分析

Mybaits代理Mapper 滑动验证页面 https://juejin.cn/post/6844903841163378701?searchId202405131414243B31C303F8A221DCC2ED

Unity学习笔记---图层

渲染层级 1&#xff0c;调整Sprite Renderer中的Order in Layer可以调整图层层级。 2&#xff0c;在Edit--Project Setting--Graphics中&#xff0c;调整TransParency Sort Mode为Custom Axis&#xff0c; 并将TransParency Sort Axis中的Z值默认的1改为0&#xff0c;将Y改为…

FBI树-蓝桥571

读题&#xff1a;&#xff08;说实话我就是读不懂题&#xff09; 1 一个地方一开始我觉得不理解&#xff1a;“含0和1的串叫F串&#xff0c;FBI树是一种二叉树&#xff0c;它的结点类型包括F结点&#xff0c;B结点&#xff0c;I结点”&#xff0c;可是一个结点不就是0或者1吗…

Nginx详解:高性能Web服务器与反向代理的奥秘

Nginx&#xff0c;发音为“engine-x”&#xff0c;是一个开源、高性能的HTTP和反向代理服务器&#xff0c;也是邮件代理服务器。自2004年首次发布以来&#xff0c;Nginx凭借其轻量级、高效能和高并发处理能力&#xff0c;在互联网领域迅速崛起&#xff0c;成为许多大型网站和高…

【Spark】Spark编程体验,RDD转换算子、执行算子操作(六)

Spark编程体验 项目依赖管理 <dependencies><dependency><groupId>org.scala-lang</groupId><artifactId>scala-library</artifactId><version>2.12.10</version></dependency><dependency><groupId>org.ap…

Bootstrap前端框架简

Bootstrap具有多种含义和用法&#xff0c;具体如下&#xff1a; 在计算机术语中&#xff0c;Bootstrap&#xff08;引导&#xff09;指一种设计成通过自己的操作使其自身处于期望状态的技术或设备&#xff0c;例如一种机器例程&#xff0c;该例程的头几个指令足以使引导其自身…

银河麒麟V10终端出现“/home/kylin/.config/caja”读写权限问题,进程杀不掉。解决办法

问题如上图所示&#xff0c;一直关不了进程&#xff0c;桌面显示不正常。 解决办法 步骤一&#xff1a;切换字符登录“ctrl alt f1切字符登录下”。&#xff08;先输用户名&#xff0c;回车输密码&#xff09; 步骤二&#xff1a;删除“caja”缓存文件&#xff08;rm -r /home/…

记一次从jenkins安装到构建出第一个jar

1.安装 官方教程见&#xff1a;https://www.jenkins.io/zh/doc/book/installing/ 可以选择docker安装相对简单。 docker环境安装见https://blog.csdn.net/taotao_guiwang/article/details/135508643 2.环境配置 见https://blog.whsir.com/post-4865.html 注意&#xff1a…

Python3 笔记:循环结构 while语句

while语句的格式&#xff1a; while 条件表达式: 循环体 while语句是一个条件循环语句&#xff0c;即首先计算表达式&#xff0c;条件表达式的值为真时&#xff0c;依次执行while语句中的循环体语句&#xff0c;直到条件表达式的值为假时跳出循环&#xff0c;执行下一条语…

智能终端RK3568主板在智慧公交条形屏项目的应用,支持鸿蒙,支持全国产化

基于AIoT-3568A的智慧公交条形屏&#xff0c;可支持公交线路动态展示&#xff0c;语音到站提醒&#xff0c;减少过乘、漏乘的情况&#xff0c;有效提高了公交服务效率和质量&#xff0c;为乘客提供了更舒适、更安全和更方便的出行体验&#xff0c;为城市的发展增添了新的活力。…