【问题标题】:Building a serverless apollo-server with aws-lambda fails使用 aws-lambda 构建无服务器 apollo-server 失败
【发布时间】:2021-11-02 14:21:15
【问题描述】:

我正在关注这个instructions 来使用 aws-lambda 设置一个 apollo-server,最后我得到了以下错误,而不是让它工作:

sls deploy --verbose                                                                                                                                       
(18874d19h37m) ruby-2.6.3  21:37:27
Serverless: Running "serverless" installed locally (in service node_modules)
Serverless: To ensure safe major version upgrades ensure "frameworkVersion" setting in service configuration (recommended setup: "frameworkVersion: ^2.57.0")

Serverless: Load command interactiveCli
Serverless: Load command config
Serverless: Load command config:credentials
Serverless: Load command config:tabcompletion
Serverless: Load command config:tabcompletion:install
Serverless: Load command config:tabcompletion:uninstall
Serverless: Load command create
Serverless: Load command install
Serverless: Load command package
Serverless: Load command deploy
Serverless: Load command deploy:function
Serverless: Load command deploy:list
Serverless: Load command deploy:list:functions
Serverless: Load command invoke
Serverless: Load command invoke:local
Serverless: Load command info
Serverless: Load command logs
Serverless: Load command metrics
Serverless: Load command print
Serverless: Load command remove
Serverless: Load command rollback
Serverless: Load command rollback:function
Serverless: Load command slstats
Serverless: Load command plugin
Serverless: Load command plugin
Serverless: Load command plugin:install
Serverless: Load command plugin
Serverless: Load command plugin:uninstall
Serverless: Load command plugin
Serverless: Load command plugin:list
Serverless: Load command plugin
Serverless: Load command plugin:search
Serverless: Load command config
Serverless: Load command config:credentials
Serverless: Load command upgrade
Serverless: Load command uninstall
Serverless: DOTENV: Loading environment variables from .env.development:
Serverless:      - SECRET_MESSAGE
Serverless: Load command webpack
Serverless: Load command offline
Serverless: Load command offline:start
Serverless: Load command login
Serverless: Load command logout
Serverless: Load command generate-event
Serverless: Load command test
Serverless: Load command dashboard
Serverless: Load command output
Serverless: Load command output:get
Serverless: Load command output:list
Serverless: Load command param
Serverless: Load command param:get
Serverless: Load command param:list
Serverless: Load command studio
Serverless: Skipping variables resolution with old resolver (new resolver reported no more variables to resolve)
Serverless: Deprecation warning: Resolution of lambda version hashes was improved with better algorithm, which will be used in next major release.
        Switch to it now by setting "provider.lambdaHashingVersion" to "20201221"
        More Info: https://www.serverless.com/framework/docs/deprecations/#LAMBDA_HASHING_VERSION_V2
Serverless: Invoke deploy
Serverless: Invoke package
Serverless: Invoke aws:common:validate
Serverless: Invoke aws:common:cleanupTempDir
Serverless: Invoke webpack:validate
Serverless: Using configuration:
{
"includeModules": true,
"webpackConfig": "webpack.config.js",
"packager": "npm",
"packagerOptions": {},
"keepOutputDirectory": false,
"concurrency": 8
}
Serverless: Removing ...-lambada/.webpack
Serverless: Invoke webpack:compile
Serverless: Bundling with Webpack...
asset src/apollo-server.js 5.11 KiB [emitted] (name: src/apollo-server)
./src/apollo-server.ts 449 bytes [built] [code generated]
external "apollo-server-lambda" 42 bytes [built] [code generated]
./src/resolvers.ts 187 bytes [built] [code generated]
./src/type-defs.ts 261 bytes [built] [code generated]
webpack compiled successfully in 2334 ms

 Type Error ----------------------------------------------

  TypeError: Cannot read property '1' of null
  ....

有什么不喜欢的想法吗? (注意:如果我从 serverless.yml 中删除 pluginscustom 它可以工作,但我假设没有 serverless-webpack 插件) 其他信息:

Your Environment Information ---------------------------
     Operating System:          darwin
     Node Version:              16.6.1
     Framework Version:         2.57.0 (local)
     Plugin Version:            5.4.4
     SDK Version:               4.3.0
     Components Version:        3.17.0

【问题讨论】:

    标签: webpack aws-lambda serverless apollo-server


    【解决方案1】:

    显然这将适用于旧版本的依赖项:

    "dependencies": {
    "apollo-server-lambda": "^2.16.1",
    "graphql": "^15.3.0"
    },
    "devDependencies": {
    "serverless-dotenv-plugin": "^3.0.0",
    "serverless-offline": "^6.5.0",
    "serverless-webpack": "^5.3.3",
    "ts-loader": "^8.0.2",
    "typescript": "^3.9.7",
    "webpack": "^4.44.1",
    "webpack-node-externals": "^2.5.0"
    }
    

    与我之前的相比:

    "dependencies": {
    "apollo-server-lambda": "^3.3.0",
    "graphql": "^15.5.2"
     },
    "devDependencies": {
    "serverless-dotenv-plugin": "^3.9.0",
    "serverless-offline": "^8.0.0",
    "serverless-webpack": "^5.5.3",
    "ts-loader": "^9.2.5",
    "typescript": "^4.4.2",
    "webpack": "^5.52.0",
    "webpack-node-externals": "^3.0.0"
    }
    

    【讨论】:

      猜你喜欢
      • 2018-11-20
      • 2018-12-13
      • 1970-01-01
      • 2019-08-27
      • 2020-10-20
      • 2022-07-27
      • 1970-01-01
      • 2021-10-06
      • 1970-01-01
      相关资源
      最近更新 更多