【发布时间】:2019-03-12 13:21:48
【问题描述】:
我有一个连接到 SQS 队列的 AWS API 网关,我可以使用 AWS 签名通过控制台和 Postman 发布消息。
我需要在 .Net 应用程序中实现 POST 请求,虽然我得到了 Ok 响应,但发布的消息并未发送到队列。这是我的代码:
var signer = new AWS4RequestSigner(AccessKey, SecretKey);
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri(uri)
};
var parameters = new List<KeyValuePair<string, string>>();
parameters.Add(new KeyValuePair<string, string>("Client", client));
parameters.Add(new KeyValuePair<string, string>("Study", study));
request.Content = new FormUrlEncodedContent(parameters);
request = await signer.Sign(request, "execute-api", "eu-west-1");
var client = new HttpClient();
var response = await client.SendAsync(request);
return response.IsSuccessStatusCode;
如果没有签名者,我也会得到 HTTP 200,但这是另一个“谜团”。
【问题讨论】:
标签: .net amazon-web-services aws-api-gateway