【发布时间】:2018-06-09 07:19:30
【问题描述】:
当我尝试将 apollo 服务器集成到流星应用程序时,我一尝试打开 graphiql 就会出错。如果我创建一个快速应用程序并将其与webapp.connectHandlers 连接,并将阿波罗服务器放置到该快速应用程序的路线之一,事情就可以工作,但它们不能以“流星方式”工作,我真的很想拥有,因为我可以访问用户对象、授权等。
错误,我一加载就在 graphiql 中看到:
Error: Schema must be an instance of GraphQLSchema. Also ensure that there are not multiple versions of GraphQL installed in your node_modules directory
堆栈跟踪:
at invariant (/Users/.../node_modules/graphql/jsutils/invariant.js:18:11)<br> at Object.validate (/Users/.../node_modules/graphql/validation/validate.js:59:72)<br> at doRunQuery (/Users/.../node_modules/apollo-server-core/dist/runQuery.js:88:38)<br> at /Users/.../node_modules/apollo-server-core/dist/runQuery.js:22:54<br> at /Users/.../.meteor/packages/promise/.0.10.0.borizy.o9z8++os+web.browser+web.cordova/npm/node_modules/meteor-promise/fiber_pool.js:43:40
服务器代码:
import {makeExecutableSchema} from 'graphql-tools';
import {typeDefs} from './schema';
import {resolvers} from './resolvers';
import { createApolloServer } from 'meteor/apollo';
export const schema = makeExecutableSchema({
typeDefs,
resolvers
});
createApolloServer({
schema
});
一切似乎都是合法的,并且适用于 express,但不适用于流星。是什么原因?我该如何解决?
【问题讨论】:
标签: meteor graphql apollo apollo-client apollo-server