简体   繁体   English

如何获得一个简单的localstack / localstack与node.js一起使用

[英]How do get a simple localstack/localstack to work with node.js

I'm trying to get a local docker instance of localstack/localstack to work with node.js aws-sdk library. 我正在尝试获取localstack / localstack的本地docker实例以与node.js aws-sdk库一起使用。 But I can get a simple createTopic to work on an sns client. 但是我可以得到一个简单的createTopic在sns客户端上工作。

I have started the docker image with this command and 我已经使用此命令启动了docker镜像并

docker run -d -p 4567-4583:4567-4583 localstack/localstack docker运行-d -p 4567-4583:4567-4583 localstack / localstack

The code that I am running.... 我正在运行的代码。

const AWS = require('aws-sdk')

AWS.config.update({
  accessKeyId: 'something',
  secretAccessKey: 'something',
  region:'us-east-1',
  logger: process.stdout
})

const sns = new AWS.SNS({endpoint:'http://localhost::4575'})
sns.createTopic({Name:'testing123'})
  .promise()
  .then(console.log)
  .catch(console.error)

And the error that is returned.... 和返回的错误...。

[AWS sns 404 0.035s 0 retries] createTopic({ Name: 'testing123' }) { 404: null at Request.extractError (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/protocol/query.js:52:29) at Request.callListeners (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/sequential_executor.js:105:20) at Request.emit (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/sequential_executor.js:77:10) at Request.emit (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/request.js:683:14) at Request.transition (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/request.js:22:10) at AcceptorStateMachine.runTo (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/state_machine.js:14:12) at /Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/state_machine.js:26:10 at Request. [AWS sns 404 0.035s 0重试] createTopic({Name:'testing123'}){404:Request.extractError(/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk /lib/protocol/query.js:52:29),位于Request.callListeners(/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/sequential_executor.js:105:20 )在Request.emit(/Users/t.smith//Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/sequential_executor.js:77:10) /workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/request.js:683:14)在Request.transition(/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules /aws-sdk/lib/request.js:22:10)在AcceptorStateMachine.runTo(/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/state_machine.js:14 :12),请访问/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/state_machine.js:26:10。 (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/request.js:38:9) at Request. (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/request.js:38:9)。 (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/request.js:685:12) at Request.callListeners (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/sequential_executor.js:115:18) message: null, code: 404, time: 2018-04-23T09:56:50.296Z, (/Users/t.smith/workspace/scratch/fake-sns-testing/node_modules/aws-sdk/lib/request.js:685:12)位于Request.callListeners(/Users/t.smith/workspace/scratch/ fake-sns-testing / node_modules / aws-sdk / lib / sequential_executor.js:115:18)消息:空,代码:404,时间:2018-04-23T09:56:50.296Z,
requestId: undefined, statusCode: 404, retryable: false, requestId:未定义,statusCode:404,可重试:false,
retryDelay: 95.466505112399 } retryDelay:95.466505112399}

I would like to hear from anyone who has successfully managed to work with a localstack/localstack docker image with node.js. 我想听听任何成功使用node.js处理localstack / localstack docker镜像的人的来信。 Thanks. 谢谢。

答案是通过删除URL中的double :来更正SNS端点。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM