当前位置: 首页 > news >正文

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.lryc.cn/news/348750.html

相关文章:

  • 发布订阅模式
  • 【Java 演示灵活导出数据】
  • 一对一WebRTC视频通话系列(六)——部署到公网
  • 【数据结构】线性表----链表详解
  • 【小程序】小程序如何适配手机屏幕
  • 第15节 编写shellcode加载器
  • JAVA学习-练习试用Java实现爬楼梯
  • [SWPUCTF 2021 新生赛]PseudoProtocols、[SWPUCTF 2022 新生赛]ez_ez_php
  • Hive-拉链表的设计与实现
  • AI应用案例:会议纪要自动生成
  • 基于光纤技术的新能源汽车电池安全监测--FOM²系统
  • 基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (二)
  • Spring MVC(三) 参数传递
  • 常见加解密算法02 - RC4算法分析
  • 如何使用 ERNIE 千帆大模型基于 Flask 搭建智能英语能力评测对话网页机器人(详细教程)
  • Java全局异常处理,@ControllerAdvice异常拦截原理解析【简单易懂】
  • 代码随想录35期Day38-Java(Day37休息)
  • 力扣HOT100 - 739. 每日温度
  • 【爬虫之scrapy框架——尚硅谷(学习笔记one)--基本步骤和原理+爬取当当网(基本步骤)】
  • C++ QT设计模式:责任链模式
  • 基于springboot+mybatis+vue的项目实战之(后端+前后端联调)
  • 【教程向】从零开始创建浏览器插件(六)实战篇
  • 如何用 OceanBase做业务开发——【DBA从入门到实践】第六期
  • Element-UI快速入门
  • 【JavaWeb】网上蛋糕商城后台-商品管理
  • Django Admin后台管理:高效开发与实践
  • Centos7网卡启动失败(Failed to start LSB: Bring up/down)
  • 【NOIP2008普及组复赛】 题4:立体图
  • 【Leetcode每日一题】 动态规划 - 简单多状态 dp 问题 - 删除并获得点数(难度⭐⭐)(76)
  • Windows---CMD常用指令大全