gpt4 book ai didi

Node.js AWS SDK 请求未接收响应数据..在一个文件中,而不是在另一个文件中

转载 作者:太空宇宙 更新时间:2023-11-04 01:12:35 25 4
gpt4 key购买 nike

我确信我在这里做了一些愚蠢的事情,或者至少错过了一些明显的事情。只是在官方 AWS SDK 模块上运行一些非常非常基本的示例。我创建了两个空文件,一个位于现有较大 Node.js 项目的目录中,另一个位于远离该其他项目的另一个单独目录中。这两个目录都包含由 NPM 创建的 node_modules 目录,其中包括 aws-sdk 模块,两种情况下的版本相同,0.9.5-pre.6。

在两个空文件中我都添加了以下代码:

// Include the AWS module
var AWS = require('aws-sdk');

AWS.config.update({
accessKeyId: 'OUR_SECURITY_KEY',
secretAccessKey: 'OUR_ACCESS_KEY'
});
AWS.config.update({region: 'OUR_REGION'});

// Create a Simple Queue Service instance
var sqs = new AWS.SQS();

// Retrieve a list of available queues on our account
sqs.client.listQueues(function (err, data) {
if (err) {
console.log(err);
}
else {
console.log(data);
}
});

只需一段非常简单的代码即可检索我们帐户上 SQS 中的队列列表。根据记录,如果我创建 S3 客户端并尝试检索 S3 存储桶列表,结果是相同的。

当我在其他项目的目录中运行该文件时...

node testfile.js

...我在终端窗口中看到响应数据...

{
ResponseMetadata: {
RequestId: 'SOME_REQUEST_ID'
},
QueueUrls: [ 'THE_CORRECT_URL_OF_MY_QUEUE' ]
}

...这就是我想要的。如果我对其他目录中的文件执行相同的操作,我会得到一个空对象...

{}

情况似乎确实如此,或者至少在我尝试过的所有不同请求中都是相似的。如果我尝试 sendMessage 将消息插入队列,它在两个文件中都有效,但问题文件再次收到空响应对象,而“工作”文件收到通常的响应数据。

任何关于我忽略的愚蠢事情的想法将不胜感激!

最佳答案

刚刚遇到了同样的问题(所有请求都返回了 {})。问题在于 XML 解析 - 即 xml2js。我在 aws-sdk 依赖项中手动将 xml2js 0.2.5 替换为 0.2.4。这解决了我的问题。

编辑:

再次将 xml2js 更新到最新版本,问题似乎已得到解决:

https://github.com/aws/aws-sdk-js/issues/69

https://github.com/Leonidas-from-XIV/node-xml2js/issues/76

多米尼克

关于Node.js AWS SDK 请求未接收响应数据..在一个文件中,而不是在另一个文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15119797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com