DynamoDB Локальный метод бросков не разрешен через SDK
Я пытаюсь использовать DynamoDB Local. Он отлично работает с помощью интерфейса командной строки AWS, но когда я пытаюсь использовать его с AWS SDK в Node, я получаю сообщение об ошибке "Метод не разрешен". Тот же самый код прекрасно работает с реальной DynamoDB, поэтому я знаю, что это не проблема с кодом.
Вот как я настроил SDK. Насколько я понимаю, регион игнорируется, поэтому это не имеет значения.
new DocumentClient({
region: 'local',
endpoint: 'http://localhost:8000',
sslEnabled: false,
})
Узел просто дает мне:
UnknownError: Method Not Allowed
at Request.extractError (/.../node_modules/aws-sdk/lib/protocol/json.js:51:27)
at Request.callListeners (/.../node_modules/aws-sdk/lib/sequential_executor.js:106:20)
at Request.emit (/.../node_modules/aws-sdk/lib/sequential_executor.js:78:10)
at Request.emit (/.../node_modules/aws-sdk/lib/request.js:683:14)
at Request.transition (/.../node_modules/aws-sdk/lib/request.js:22:10)
at AcceptorStateMachine.runTo (/.../node_modules/aws-sdk/lib/state_machine.js:14:12)
at /.../node_modules/aws-sdk/lib/state_machine.js:26:10
at Request.<anonymous> (/.../node_modules/aws-sdk/lib/request.js:38:9)
at Request.<anonymous> (/.../node_modules/aws-sdk/lib/request.js:685:12)
at Request.callListeners (/.../node_modules/aws-sdk/lib/sequential_executor.js:116:18)
Я запускаю DynamoDB Local на macOS 10.14.6 с Java:
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
Но я также попробовал с образом Docker Amazon и все той же ошибкой.
2 ответа
Порт использовался другим приложением. И Java не удосужился упомянуть об этом при запуске локального сервера DynamoDB...
Но это не объясняет, почему AWS CLI работал. Теперь я в замешательстве...
Поместите любой допустимый регион, например, "us-east-1" вместо "local".