Tag: elastic mq

为什么Node.js AWS-SDK在创build本地队列时返回了错误的SQS队列URL

我正在使用ElasticMQ在本地开发机器上模拟AWS SQS。 我在Docker容器中运行ElasticMQ,使用docker-osx-dev托pipeLinux VM上的Docker容器。 这意味着我访问虚拟机IP地址的本地ElasticMQ实例,而不是本地主机IP。 当我尝试使用下面的代码在EMQ中创build一个队列时,它会在localhost返回一个队列URL,而不是托pipedocker容器的虚拟机的IP。 var AWS = require('aws-sdk'); var config = { endpoint: new AWS.Endpoint('http://192.168.59.103:9324'), accessKeyId: 'na', secretAccessKey: 'na', region: 'us-west-2' } var sqs = new AWS.SQS(config); var params = { QueueName: 'test_queue' }; sqs.createQueue(params, function(err, data) { if (err) { console.log(err); } else { console.log(data.QueueUrl); } }); 目前这个代码返回: http://localhost:9324/queue/test_queue ,但是它应该返回http://192.168.59.103:9324/queue/test_queue 。 如果我用实际的IP地址replaceURL中的“localhost”,我可以成功地访问这个URL的队列,表明它确实被创build了,但这是一个非常讨厌的黑客行为。 […]