gpt4 book ai didi

javascript - 如何在没有访问 key 和 key 的情况下写入只写 SQS 队列

转载 作者:行者123 更新时间:2023-12-04 00:41:21 25 4
gpt4 key购买 nike

我有一个网站可以将来自客户端的消息写入 Amazon SQS 队列。每个人都可以写入队列。我们有一个服务器端进程读取队列消息并处理它们。

队列配置为每个人都有写入权限,这是它的策略:

{
"Version": "2012-10-17",
"Id": "arn:aws:sqs:.../SQSDefaultPolicy",
"Statement": [{
"Sid": "Sid1537097246229",
"Effect": "Allow",
"Principal": "*",
"Action": "SQS:SendMessage",
"Resource": "arn:aws:sqs:..."
}]
}

但是,如果没有访问 key 和 secret key ,我们似乎无法写入队列。 AWS 开发工具包返回错误,指出尚未提供凭证。我们正在使用 AWS SQS documentation 中描述的代码.

最佳答案

我不建议允许未经身份验证的访问 SQS 队列,但如果您必须这样做,那么您应该能够通过 JavaScript SDK 发出未经身份验证的请求,如下所示:

const AWS = require('aws-sdk');

AWS.config.update({ region: 'us-east-1' });

const sqs = new AWS.SQS({ apiVersion: '2012-11-05' });

const params = {
DelaySeconds: 10,
MessageAttributes: {
Title: {
DataType: 'String',
StringValue: 'The Whistler',
},
Author: {
DataType: 'String',
StringValue: 'John Grisham',
},
},
MessageBody: 'NY Times fiction bestseller 12/11/2016.',
QueueUrl: 'QUEUE_URL_HERE',
};

sqs.makeUnauthenticatedRequest('sendMessage', params, (err, data) => {
if (err) {
console.log('Error', err);
} else {
console.log('Success', data.MessageId);
}
});

关于javascript - 如何在没有访问 key 和 key 的情况下写入只写 SQS 队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52354119/

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