【发布时间】:2019-02-06 06:44:16
【问题描述】:
我是 AWS 的初学者,我想使用 ASP.Net Core 2.2 Web Api 应用程序中的 Amazon Kinesis 将示例数据发送到 s3 存储桶。但我无法发送数据。以下是我尝试过的。 我做的步骤:
创建了一个 AWS 账户,然后创建了一个 s3 存储桶。
创建了 Kinesis 帐户并将 s3 存储桶链接到该帐户。
3。 在主要
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
Amazon.Util.ProfileManager.RegisterProfile("demo-aws-profile", "MyAccessKeyId", "MySecretKey");
}
问题 1: 我应该通过什么来代替 "demo-aws-profile"?它可以是任何随机名称吗?
问题 2:连接 AWS 还需要其他什么吗?
代码片段
[HttpGet]
public ActionResult<IEnumerable<string>> Get()
{
var o = new
{
Message = "Hello World"
};
byte[] oByte = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(o));
AmazonKinesisConfig config = new AmazonKinesisConfig();
config.RegionEndpoint = Amazon.RegionEndpoint.USEast1;
// QUESTION 3: DO I NEED TO SET ANY OTHER PROPERTY IN CONFIG??
var client = new AmazonKinesisClient(config);
try
{
using (MemoryStream ms = new MemoryStream(oByte))
{
PutRecordRequest requestRecord = new PutRecordRequest();
// QUESTION 4: What is this stream name???
requestRecord.StreamName = "test-stream";
requestRecord.Data = ms;
var response = client.PutRecordAsync(requestRecord);
response.Wait();
return Ok(new
{
seq = response.Result.SequenceNumber
});
}
}
catch (Exception e)
{
Console.WriteLine(e);
throw;
}
return new string[] { "value1", "value2" };
}
我收到了System.Threading.Tasks.TaskCanceledException: A task was canceled. 的异常
P.S:我是初学者,我可能会犯任何基本错误,所以如果我应该提供任何进一步的细节,请告诉我。我仍然认为我无法与 Kinesis 通信,因此无法与我的 s3 存储桶通信。我是做错了什么还是错过了一些设置。
【问题讨论】:
标签: c# amazon-web-services amazon-s3 amazon-kinesis amazon-kinesis-firehose