【发布时间】:2018-12-30 19:11:38
【问题描述】:
我是 AWS lambda 和 GraphQL 的新手。我正在尝试将 Express GraphQL 应用程序部署到 AWS Lambda。
index.js 文件
const awsServerlessExpress = require("aws-serverless-express");
var express = require("express");
var graphqlHTTP = require("express-graphql");
var { buildSchema } = require("graphql");
// Construct a schema, using GraphQL schema language
var schema = buildSchema(`
type Query {
hello: String
}
`);
// The root provides a resolver function for each API endpoint
var root = {
hello: () => {
return "Hello world!";
}
};
var app = express();
app.use(
"/",
graphqlHTTP({
schema: schema,
rootValue: root,
graphiql: true
})
);
const server = awsServerlessExpress.createServer(app);
exports.handler = (event, context) =>
awsServerlessExpress.proxy(server, event, context);
Expected Output:
但在 AWS Lambda 控制台中执行 AWS Lambda 函数时出错。
Current Output:
【问题讨论】:
-
嘿,不是解决你的问题,但也许使用Apollo Server 会更容易一些,因为你不需要所有的快递。
-
嗨,我想使用 express-GraphQL 将 GraphQL 服务器安装在“/”端点上。 @Herku
-
这个错误的上下文是什么?当您的请求不包含查询时会发生此结果(因此既不在 get
?query={...}也不在 post data{ "query": "{...} }中)。如果您在没有必要参数的情况下运行标准 AWS lambda 测试,您可能会收到此响应。另外我不确定 AWS lambda 版本是否能够提供 GraphiQL。 -
你好@srinivas,你解决了这个错误吗?将 lambda 函数部署到 AWS 后,我面临同样的错误
标签: javascript amazon-web-services express aws-lambda graphql