问题标签 [aws-sdk-nodejs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1269 浏览

node.js - 带有 etags 的 s3 流式传输(节点)

我们createReadStream()在 aws-sdk 中使用节点中的 S3 流式传输内容。我们想添加 etag 支持。如果我们从客户端添加“If-None-Match”标头,s3 会抛出 NotModified 作为我似乎无法处理的错误。

我尝试过监听流上的事件,并对从 getObject 返回的请求使用回调。我可以通过这种方式收到错误消息,但 aws-sdk 中的其他内容似乎正在杀死我的进程。

0 投票
1 回答
618 浏览

node.js - AWS CloudSearch 上传 JSON:值标签不能是数组或对象

我正在运行 lambda 函数 (NodeJS) 将一些文档上传到 AWS Cloud Search。我不断收到以下错误。

我遵循的文档格式

这是我用来上传数据的代码

记录时我的字符串化数据看起来类似于

有人可以指出我正确的方向吗?

0 投票
3 回答
2157 浏览

amazon-web-services - AWS-SDK for NodeJS:如何获取程序中使用的凭证

我在我的代码中访问 AWS sdk 及其服务:

我想看看初始化 S3 对象时获取的凭据是什么。我尝试了以下方法,显然我无法从文档中弄清楚如何正确使用方法和类。

有人能告诉我获取这些数据的正确方法吗?对于这部分,我没有找到易于理解的 aws 文档。

编辑:我可以使用更新代码中的凭据aws.config.update({accessKeyId: 'xxx', secretAccessKey: 'yyy', sessionToken:'zzz'

当我不这样设置它们时,我想看看这些值是什么。未设置进程环境变量。我已正确设置凭据文件。

0 投票
1 回答
875 浏览

node.js - 可以使用节点 aws-sdk 更新文件(最好是 csv)吗?

我了解如何读取文件,但我不确定如何创建流来更新文件。本质上,我想在 s3 对象上运行以下命令:

fs.writeFileSync('targetFile.csv', new_data, {flag: 'a+'})

上下文是,我有一个包含表单的弹性 beanstalk 应用程序。提交时,我想捕获一些数据并写入位于 s3 存储桶中的文件 csv 文件。如果有更好的方法解决方案,我对此持开放态度。

更新:这是我的解决方案,但我觉得应该有一种更清洁的方式:

0 投票
1 回答
755 浏览

node.js - NodeJS Lambda 区域 WAF IPSetID

我是新的 NodeJS,并试图更改 AWS 提供的此示例以更新信誉列表,但它仅特定于 CloudFront 全球区域。

https://github.com/awslabs/aws-waf-sample/tree/master/waf-reputation-lists

我已经对 CloudFormation 进行了更改以创建区域 IPSetID,但是该函数在 IPSetID 不存在的情况下退出。我认为这是因为 SDK 正在查看全局而不是区域,即 eu-west-1,因此我在配置中设置了区域,但它仍然无法找到 IPSet。

我看到了一个最近的问题(AWS WAF 更新 ip sets and rules specific to a region from lambda),它显示了 URL 的差异,但是我不知道从哪里开始更新 URL?

0 投票
3 回答
16418 浏览

amazon-web-services - 如何从 ~/.aws/config 加载配置

更改日志显示 Load config from ~/.aws/config if AWS_SDK_LOAD_CONFIG is set. 找不到有关如何加载配置的任何示例或文档。任何帮助!

0 投票
2 回答
14335 浏览

javascript - aws-sdk: NoSuchKey: 指定的键不存在?

在我的 nodejs 项目中,我使用 aws-sdk 从我的 s3 存储桶中下载所有图像,但是我收到了这个错误 - NoSuchKey: The specified key does not exist。但是密钥是正确的,我可以使用这些密钥上传图像。

我的代码是:

谁能告诉我我做错了什么?

0 投票
4 回答
9772 浏览

javascript - 如何从 node.js 中的 Amazon S3 存储桶同步下载文件

我必须使用 node.js 从 S3 存储桶下载多个文件。为此,我必须编写一个for loop& 调用s3.getObject(param)方法来下载。下载文件后,我必须合并它们的内容。

我是这样写的:

但是作为s3.getObject异步调用,当前线程继续前进,fileContentList在我进行合并时没有添加任何内容。

我该如何解决这个问题?任何想法?
他们在 aws-sdk 中是否有任何同步方法来下载文件?

0 投票
2 回答
1088 浏览

amazon-web-services - AWS SDK 无法在公司代理后面连接

我的工作站位于公司代理后面,我已经设置了环境变量,并且可以使用除 aws-sdk 和 NodeJS 之外的所有内容。这里是 TCP 连接的转储:

请注意,三次握手正常,然后客户端(以 106 结尾的 ip)在 5 号包上发送一些数据(psh,ack),然后立即接收代理的 ACK(6 号包)。然后很长一段时间没有通信(7和19之间的包不是来自这个tcp会话),包20是一个FIN(代理超时,因为没有发送包?)。此对话由 Amazon 提供的示例生成。

节点版本:在今天安装的 6.10.0、6.11.0 和 8.1.3 SDK 上测试 (2.82.0)

作为比较,我aws cloudformatin describe-stack-resources --stack-name my-stack在同一台 Ubuntu 机器上运行。众所周知,awsCLI 是 python,命令运行正常,对话如下:

注意从1到3的包是三次握手,和JS SDK完全一样,包4和JS SDK的包5类似,没有在总结中显示但它也有PSH标志和ACK,不同的是内容(预期) 并且数据包 5 是该数据的代理 ACK。从这一点开始,情况有所不同,awsCLI 在 ACK 到达数据包 6 后立即发送下一个数据包。收到数据后,awsCLI 发送 FIN,接收 ACK,加密警报并发送 RST(这是由于未预期的加密警报)。

我找不到为什么 JS SDK 在最后一个服务器 ACK 之后停止发送数据。但是由于代理超时并在某个时间后发送 FIN ACK,我的节点脚本似乎挂了很长时间,直到中止并出现以下错误:

消息:'socket hang up',代码:'NetworkingError',区域:'us-west-2',主机名:'bucket.s3-us-west-2.amazonaws.com',可重试:true,时间:2017- 07-07T19:31:29.494Z} 空

有什么线索吗?

0 投票
1 回答
124 浏览

node.js - 概念问题:React Native、Apollo、Node 和 GraphQL 如何协同工作?

我是 GraphQL、Apollo、AWS S3 和 Redux 的新手。我已经阅读了每个教程的教程,并且我熟悉 React Native、Node、Heroku 和 Mongo。我无法理解以下内容:

  • 如何使用 React Native 为移动设备托管“GraphQL 服务器”?
  • 我可以使用 Node 创建 GraphQL 服务器并将其托管在 AWS S3 上吗?
  • 如何在我的 React Native 代码中使用 Apollo/GraphQL 获取该数据并使用 Apollo/Redux 在本地存储该数据?
  • 我是否必须从一开始就使用 Graphcool 作为端点?我要做的就是在应用程序加载时从我的数据库中提取数据(不希望对其进行流式传输,以便我能够离线使用数据)。

我应该从哪里获得更好的理解?