问题描述
我正在运行 Meteor/React/Apollo/Graphql 堆栈,我正在尝试使订阅正常工作,我已经浏览了 Apollo 文档并试图让它与这个库一起工作,但我得到了一个我的Graphiql控制台中的错误如下:
{
"error": "Could not connect to websocket endpoint ws://XXX.XXX.XX.XX:3000/subscriptions. Please check if the endpoint url is correct."
}
我的服务器代码如下:
import { ApolloServer,gql } from "apollo-server-express"
import { makeExecutableSchema } from "graphql-tools"
import { WebApp } from "meteor/webapp"
import { getUser } from "meteor/apollo"
import merge from "lodash/merge"
import SchemaA from "../../api/a/SchemaA.graphql"
import ResolverA from "../../api/a/resolvers"
import SchemaB from "../../api/b/SchemaB.graphql"
import ResolverB from "../../api/b/resolvers"
import SchemaC from "../../api/c/SchemaC.graphql"
import ResolverC from "../../api/c/resolvers"
import { GooglePubSub } from "@axelspringer/graphql-google-pubsub"
const pubsub = new GooglePubSub()
const typeDefs = [SchemaA,SchemaB,SchemaC]
const resolvers = merge(ResolverA,ResolverB,ResolverC)
const schema = makeExecutableSchema({ typeDefs,resolvers })
const server = new ApolloServer({
schema,context: async ({ req }) => ({
user: await getUser(req.headers.authorization),pubsub
}),subscriptions : {
path: '/subscriptions'
}
})
server.applyMiddleware({
app: WebApp.connectHandlers,path: "/graphql",})
WebApp.connectHandlers.use("/graphql",(req,res) => {
if (req.method === "GET") {
res.end()
}
})
有人对如何解决这个问题有任何建议吗?显然有一些配置/设置我做得不正确。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)