Amazon dynamodb 未在serverless.yml文件中创建DynamoDB表
运行sls offline start并尝试访问用户终结点后,获取错误无法对不存在的表执行操作。serverless.yml文件如下所示:Amazon dynamodb 未在serverless.yml文件中创建DynamoDB表,amazon-dynamodb,serverless-framework,Amazon Dynamodb,Serverless Framework,运行sls offline start并尝试访问用户终结点后,获取错误无法对不存在的表执行操作。serverless.yml文件如下所示: service: name: digital-secret plugins: - serverless-dynamodb-local - serverless-offline # must be last in the list custom: userTableName: 'users-table-${self:provider.st
service:
name: digital-secret
plugins:
- serverless-dynamodb-local
- serverless-offline # must be last in the list
custom:
userTableName: 'users-table-${self:provider.stage}'
dynamoDb:
start:
migrate: true
provider:
name: aws
runtime: nodejs8.10
stage: dev
region: us-east-2
iamRoleStatements:
- Effect: Allow
Action:
- 'dynamodb:Query'
- 'dynamodb:Scan'
- 'dynamodb:GetItem'
- 'dynamodb:PutItem'
- 'dynamodb:UpdateItem'
- 'dynamodb:DeleteItem'
Resource:
- { "Fn::GetAtt": ["usersTable", "Arn"] }
environment:
USERS_TABLE: ${self:custom.userTableName}
functions:
app:
handler: index.handler
events:
- http: ANY /
- http: 'ANY {proxy+}'
user:
handler: index.handler
events:
- http: 'GET /users/{proxy+}'
- http: 'POST /users'
resources:
Resources:
usersTable:
Type: 'AWS::DynamoDB::Table'
Properties:
TableName: ${self:custom.userTableName}
AttributeDefinitions:
- AttributeName: userId
AttributeType: S
KeySchema:
- AttributeName: userId
KeyType: HASH
ProvisionedThroughput:
ReadCapacityUnits: 1
WriteCapacityUnits: 1
有人能帮我指出这里出了什么问题吗?我已经浏览了这些文档,并查看了许多不同的在线示例,但我所看到的与上面的没有什么不同。文档说自定义块的结构应如下所示:
custom:
dynamodb:
start:
migrate: true
您使用的是dynamoDb而不是dynamoDb如果其他人对此有问题,我花了数小时试图跟踪此问题,这是因为我无意中在serverless.yml中的[r]esources部分遇到了错误的情况
Resources: <-- Needs to be lower case 'r'
Resources:
usersTable:
Type: 'AWS::DynamoDB::Table'
Properties:
...