javascript - 带有 Lambda 的 Graphql Yaga Playground - "Server cannot be reached"

标签 javascript node.js aws-lambda graphql

我正在使用 servlerless/lambda 设置 graphql 端点,并且在尝试连接到 graphql-yoga 附带的 graphql playground 时收到错误。当我去到有 Playground (/playground) 的路线时,它会启动 Playground 界面,但它只是说:

Server cannot be reached

在 Playground 的右上角。值得注意的是,我正在使用 makeRemoteExecutableSchema 实用程序来代理到另一个 graphql 端点(这是我的名为 Prismic 的 CMS)。我不认为这是问题所在,因为在普通的快速服务器上进行测试时,我已经成功地将它连接到 Playground 。

这是我的 handler.js

中的代码
'use strict';

const { makeRemoteExecutableSchema } = require('graphql-tools');
const { PrismicLink } = require("apollo-link-prismic");
const { introspectSchema } = require('graphql-tools');
const { ACCESS_TOKEN, CMS_URL } = process.env;
const { GraphQLServerLambda } = require('graphql-yoga')

const lambda = async () => {
  const link = PrismicLink({
    uri: CMS_URL,
    accessToken: ACCESS_TOKEN
  });

  const schema = await introspectSchema(link);

  const executableSchema = makeRemoteExecutableSchema({
    schema,
    link,
  });

  return new GraphQLServerLambda({ 
    schema: executableSchema,
    context: req => ({ ...req })
  });
}

exports.playground = async (event, context, callback) => {
  context.callbackWaitsForEmptyEventLoop = false;
  const graphQl = await lambda();
  return graphQl.playgroundHandler(event, context, callback);
};

我关注了this让它运行到这里的指南,我相当确定我已经按照适用于我正在尝试做的事情的类似步骤进行操作,但似乎无法弄清楚我哪里出了问题。

谢谢,

最佳答案

您能看一下您使用的是哪个版本的 graphql-yoga 软件包吗?

我在将 Apollo 服务器与 Kentico Cloud Headless CMS 结合使用时遇到了类似的问题,我发现了这个问题:

关于javascript - 带有 Lambda 的 Graphql Yaga Playground - "Server cannot be reached",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54037128/

相关文章:

javascript - 如何像加载网页一样发推特

javascript - 无法解析 Angular 2 中 MapsPage :(? ,NavController,LaunchNavigator,.......) 的所有参数

javascript - sql 查询或 javascript 代码来计算数据库中的月数并将其乘以 laravel 中的总值

javascript - s3.getObject(...).createReadStream 不是函数

amazon-web-services - 如何创建 lambda boto3 函数以在另一个 AWS 账户中创建 cloudformation 堆栈

javascript - Firefox javascript问题设置变量

javascript - 存储用户敏感 API 详细信息的安全方式(本地存储还是数据库?)

node.js - Docker Compose 抛出无效类型错误

aws-lambda - 如何从 CFN 资源 "DependsOn"Lambda 函数?

amazon-web-services - 使用 AWS Lambda 更改 S3 存储桶中的文件