i使用 serverless offline 开发Web项目。
我需要 API键访问> Serverless aws lamda 。
我有一个带我的服务和我的提供商。
的server.ymlin Postman ,我访问我的路线( http://127.0.0.1:33333/segments/uuid/test/test (,我没有任何错误(作为禁止消息(,执行了lambda ...
test:
handler: src/Api/segment.test
events:
- http:
path: segments/{segmentUuid}/test
method: post
request:
parameters:
paths:
segmentUuid: true
private: true
所讨论的路线不受私人的保护。
https://www.npmjs.com/package/serverless-offline#token-authorizers
无服务器官方官方将效仿APIG的行为,并创建一个 在屏幕上打印的随机令牌。有了这个令牌,您可以 访问您的私人方法添加X-API-KEY:生成的token 请求标题。所有API键都将共享同样的令牌。指定 自定义令牌使用-apikey CLI选项。
命令看起来像这样:
sls offline --apiKey any-pregenerated-key
用于本地dev使用此内部serverless.yml:
custom:
serverless-offline:
apiKey: 'your-key-here'
或Inside inside server.ts:
custom: {
'serverless-offline': {
apiKey: 'your-key-here',
},
},
给定最新的更改,这种配置在我的脱机方面对我有用:
provider: {
name: 'aws',
region: region,
runtime: 'nodejs14.x',
stage: stage,
apiGateway:{
apiKeys: [{
name: 'test name',
value: 'sadasfasdasdasdasdafasdasasd'
}],
},
},
https://github.com/dherault/serverless-flline/issues/963