現時点では、C#アプリを使用して既知のURLから画像をダウンロードし、AWS S3サーバーにアップロードします。AWS S3にファイルのダウンロードをリクエストできますか?
using (WebClient c = new WebClient())
{
var data = c.DownloadData(ad.PhotoUrl);
var s3 = new AmazonS3Client(RegionEndpoint.EUWest1);
using (var memoryStream = new MemoryStream(data))
{
using (var yourBitmap = new Bitmap(memoryStream))
{
yourBitmap.Save(memoryStream, ImageFormat.Jpeg);
var titledRequest = new PutObjectRequest
{
CannedACL = S3CannedACL.PublicRead,
InputStream = memoryStream,
BucketName = myBucket,
Key = keyName
};
s3.PutObject(titledRequest);
}
}
}
それが正常に動作しますが、私はこの方法を避けたい、私は削除/保存するための一定の巨大な画像流れを持っているので、それは私の帯域幅を殺します。 「ダウンロード」の部分をバイパスすることはできますか?つまり、自分でad.PhotoUrl
にある画像をダウンロードするにはAWS S3サーバーに依頼できますか? C#は "遠い要求"には必要ありません。私はそれが可能かどうかを知りたいので、解決策を見つけるために少し掘り下げることができます。
シンプルにするために、私はAWS S3にこう言います。ちょっとこの画像をダウンロードして保存できますか?代わりに:ちょっと、ちょうど私がダウンロードした画像があります、あなたはそれを保存できますか?
唯一の解決策です。アイデアをありがとう、私はこのソリューションを調査します。 – Gun