C# 中的 aws sdk sesv2 ListContactsAsync 问题

问题描述 投票:0回答:1

任何人都可以确认这在 C# 中适用于他们吗?我正在使用 ses v2 并尝试获取联系人列表。我在获取个人联系人方面没有任何问题,而且我的 IAM 用户设置确实具有 SES:ListContacts 权限。这些键适用于 sendmail 和 getcontact,但不适用于 listcontacts。当我通过 AWS CLI 执行此操作时,ListContacts 使用相同的用户和凭证。

var client = new AmazonSimpleEmailServiceV2Client("ID", "SECRET_KEY");

/* works
var cRequest = new GetContactRequest();
cRequest.ContactListName = "fmContacts";
cRequest.EmailAddress = "[email protected]";
GetContactResponse response = await client.GetContactAsync(cRequest);

Console.Write(response.EmailAddress);
*/

// fails with 
var cRequest = new ListContactsRequest();
cRequest.ContactListName = "fmContacts";

ListContactsResponse response = await client.ListContactsAsync(cRequest);

Console.Write(response.Contacts);

Amazon.SimpleEmailV2.AmazonSimpleEmailServiceV2Exception:“我们计算的请求签名与您提供的签名不匹配。检查您的 AWS 秘密访问密钥和签名方法。有关详细信息,请参阅服务文档。'

c# .net amazon-web-services amazon-ses
1个回答
0
投票

ListContacts
多个 AWS 开发工具包(包括适用于 .NET 的 AWS 开发工具包)存在已知问题。 SDK 团队已将其传递给 SES 团队。

ListContacts 被建模为 GET 请求,该请求还具有

Filter
参数的请求正文,这与 .NET 的 HTTP 客户端不能很好地配合。这就是为什么它在某些 SDK 中有效但在其他 SDK 中无效的原因。

之前的一些报道:

© www.soinside.com 2019 - 2024. All rights reserved.