首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法找到使用Serverless和阿波罗服务器-lambda/graphql的模块

无法找到使用Serverless和阿波罗服务器-lambda/graphql的模块
EN

Stack Overflow用户
提问于 2021-12-21 23:27:21
回答 1查看 242关注 0票数 2

我试图点击我的图形端点,以使操场弹出在我的浏览器。服务器在无服务器状态下显示,在我执行npm start时,它是通过给出下面的图来运行的。

但是,当我实际单击该链接时,它会给我一个502,并在我的终端中发出以下错误:

代码语言:javascript
复制
``offline: ANY /dev/graphql (λ: graphql)
offline: Failure: Cannot find module '/Users/aroe/Desktop/projects/test-serverless-backend/src/functions/graph/graphql'
Require stack:
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/lambda/handler-runner/in-process-runner/InProcessRunner.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/lambda/handler-runner/in-process-runner/index.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/lambda/handler-runner/HandlerRunner.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/lambda/handler-runner/index.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/lambda/LambdaFunction.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/lambda/LambdaFunctionPool.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/lambda/Lambda.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/lambda/index.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/ServerlessOffline.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/index.js
 - /Users/aroe/Desktop/projects/test-serverless-backend/node_modules/serverless-offline/dist/main.js
 - /opt/homebrew/lib/node_modules/serverless/lib/classes/PluginManager.js
 - /opt/homebrew/lib/node_modules/serverless/lib/Serverless.js
 - /opt/homebrew/lib/node_modules/serverless/scripts/serverless.js
 - /opt/homebrew/lib/node_modules/serverless/bin/serverless.js
 ``

我相信它告诉我,它无法在我的serverless.yml文件中找到我的lambda引用,但是,我设置的路径是正确的,如下所示:

代码语言:javascript
复制
service: gamitrak-backend # service name
provider:
  name: aws # deploy to AWS
  runtime: nodejs12.x
  versionFunctions: false # disable function versioning
  region: us-west-2 # AWS region
  apiGateway:
    shouldStartNameWithService: true

functions:
  graphql:
    handler: src/functions/graph/graphql.graphqlHandler # Lambda handler path
    events:
      - http:
          path: graphql # define Lambda endpoint
          method: any # any HTTP method can access this Lambda
          cors: true # enable CORS
plugins:
  - serverless-offline

另外,下面是有问题的graphql.ts文件以供进一步参考:

代码语言:javascript
复制
import { ApolloServer, gql } from 'apollo-server-lambda';
import { usersTypeDefs, usersResolvers } from './schema/users';

// get the GraphQL schema

// resolver functions

const server = new ApolloServer({ typeDefs: usersTypeDefs, resolvers: usersResolvers });

// launch the server when the Lambda is called
exports.handler = server.createHandler();

EN

回答 1

Stack Overflow用户

发布于 2022-07-27 17:59:47

我找到了一个解决方案,我在我的serverless.yml中添加了以下代码

代码语言:javascript
复制
plugins:
  - serverless-offline
custom:
  serverless-offline:
    noPrependStageInUrl: true
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70442634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档