问题标签 [aws-sdk-go-v2]
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.
amazon-web-services - 在 aws-sdk-go-v2 for Go 中为 AWS s3 添加 Presign URL Expiration
有一个使用 aws-sdk-go-v2 创建预签名 URL的非常好的示例。
这很好用,但我坚持设置过期时间。我确实看到 PresignOptions 结构有一个,Expires但我不确定如何做到这一点。
我也看到WithPresignExpires了,但是,我也不知道如何使用这个给出的例子。
这里可以举个例子吗?我正在学习围棋,但这里有些东西是我无法掌握的。
amazon-web-services - 否定等待条件
我正在使用 aws-go-sdk,对 AWS API 执行操作。顺便说一句,我正在尝试将私有 IP 地址添加/删除到选择的 S3 实例。在向我正在使用的实例添加/删除 IP 时WaitUntilInstanceRunning,等待实例使用我分配的 IP 地址运行。使用 API,我设法写了一些类似的东西
这可以很好地分配 IP。但是,当向他/她自己保证被删除的 IP 也被删除时,应该使用什么?
ec2.Filter没有在其 API 中提供“运算符” 。我的意思是,如果这是等待并验证实例是否以预期值运行的唯一方法,则否定它并确保实例未以预期值运行是不可能的(因为删除之前的所有值都将存在后)。前任:
- “实例 1”具有 [IP1, IP2]
- 删除 IP2
- 等待“实例 1”有 [IP1]
这是 API 不执行的操作,还是等待 API 对提供的值执行相等断言?即:WaitUntilInstanceRunning当“实例1”只有IP1时返回?
amazon-web-services - 如何使用 dynamodb aws-sdk-go-v2 的 ExclusiveStartKey 进行分页?
我正在尝试为我拥有的 dynamodb 表创建一个分页端点。但是我已经尝试了一切来让 ExclusiveStartKey 成为正确的类型以使其正常工作。但是,我尝试过的一切似乎都不起作用。
示例代码:
编辑:
好的,我正在创建一个需要分页的 API。API 需要有一个查询参数,可以在其中定义 lastEvaluatedId。然后我可以使用 lastEvaluatedId 作为 ScanInput 上的 ExclusiveStartKey 传递。但是,当我这样做时,我仍然从数据库中收到相同的项目。我创建了一个 test.go 文件并将发布以下代码:
当我运行这个测试代码时。我得到这个输出:
因此,返回的项目与我传递给 ScanInput.ExclusiveStartKey 的 Id 相同。这意味着它不是从 ExclusiveStartKey 开始的。扫描每次都从头开始。
aws-sdk-go - 如何找出我做错了什么。使用 go sdk 在时间流写入记录中获取验证异常?
正如标题所说,我正在尝试将一堆记录写入时间流,但我不断收到“ValidationException”而没有任何进一步的信息,所以我不知道应该修复什么。确切的错误响应是:
操作错误时间流写入:WriteRecords,https 响应错误 StatusCode:400,RequestID:XXXXXXXXXXXXXX,ValidationException:
它让我认为它是一个多行字符串,并且不知何故日志记录框架没有正确记录,但我尝试按 \n 拆分,我得到的只是一个大小为 1 的列表,其中包含相同的文本。
有任何想法吗?
go - aws-sdk-go-v2 自定义记录器
使用 SDK 的 v1,我可以将 logrus 用于我的自定义记录器,例如:
这已随 sdk v2 改变,https://aws.github.io/aws-sdk-go-v2/docs/configuring-sdk/logging/
看来我需要按照https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/config#WithLogger使用 logging.logger
我很难为此目的使用 logrus,有人可以建议我在这里需要做什么吗?
amazon-web-services - 如何向 AWS 验证 gocql
我有一个需要连接 AWS 上的 Keyspaces 的 Go 服务。我的 pod 有一个角色 and和AWS_SECRET_ACCESS_KEYenv vars。AWS_ACCESS_KEY_IDAWS_SESSION_TOKEN
我想使用 aws SDK v2。我应该使用什么凭据提供程序?ec2rolecreds或其他一个(也许stscreds)?
我试图从这里实现示例。但我得到一个错误
我在哪里可以找到工作示例和更多解释?
更新
现在我的代码如下所示:
Retrieve()返回错误
更新 2
在同一环境中,AWS SDK v1 工作正常。所以物理上 AWS 端点是可用的。
go - 在 aws-sdk-go-v2 中从 S3 预签名 URL 中省略区域
最近我将代码库从 aws-sdk-go v1 迁移到 v2。但我注意到迁移指南中似乎没有描述的差异,v1 和 v2 之间生成的预签名 URL 已更改:
- v1:
https://s3.amazonaws.com/<bucket>/<path> - v2:
https://s3.<region>.amazonaws.com/<bucket>/<path>
经过一番研究,我发现另一个 Slack 线程提到 v2 现在使用 sig4,它将区域包含在 URL 中(此处)。
我的问题是我需要使用没有区域的旧主机名版本,因为旧代码依赖于s3.amazonaws.com主机名匹配。因此,我希望是否有任何方法可以将区域添加到 aws-sdk-go-v2 中的预签名 URL 中。
这是我用来生成 S3 预签名 URL 的代码: