我正在生成一個 .csv 檔案,以便使用 .net c# Lambda 函式進一步存盤在 s3 存盤桶中。
這是我遵循的程序:
生成 .csv 并將其存盤在 lambda 函式執行的 /tmp/ 檔案夾中。在這一步中,我不確定它是否真的將檔案保存在該路徑中。
//filepath = @"/tmp/test.csv" try { using (System.IO.StreamWriter file = new System.IO.StreamWriter(@filepath, true)) { file.WriteLine(ID "," workItemType "," title "," assignedTo "," state "," iterationPath); Console.WriteLine("Successfully added"); } } catch (Exception ex) { throw new ApplicationException(" somethings wrong: ", ex); }將檔案上傳到 s3 存盤桶。
try { await client.PutObjectAsync(new Amazon.S3.Model.PutObjectRequest { BucketName = "mys3bucket", Key = "test.csv", ContentType = @"/tmp/test.csv" }); await Task.CompletedTask; } catch (Exception ex) { Console.WriteLine("Exception in PutS3Object:" ex.Message); ; }
在這最后一步中,我收到此錯誤訊息:
PutS3Object 中的例外:值 '\tmp\test.csv' 的格式無效。
我做錯了什么?
uj5u.com熱心網友回復:
您需要發送資料以包含在 csv 檔案中:
await client.PutObjectAsync(new Amazon.S3.Model.PutObjectRequest
{
BucketName = "mys3bucket",
Key = "test.csv",
ContentBody = DATAINSTRINGFORMAT,
ContentType = @"text/csv"
});
或作為檔案路徑發送:
await client.PutObjectAsync(new Amazon.S3.Model.PutObjectRequest
{
BucketName = "mys3bucket",
Key = "test.csv",
FilePath = FILEPATHONYOURTEMPFOLDER,
ContentType = @"text/csv"
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/434226.html
標籤:C# 。网 亚马逊网络服务 亚马逊-s3 aws-lambda
