1

署名付き URL を使用して、Air を使用してモバイル デバイスから BLOB をアップロードしています。

2 つの質問があります。

署名付き URL を使用して BLOB をアップロードする場合、ドキュメントに記載されているようにすべてのヘッダーを含める必要はないと思います。URL へのリクエストを実行し、エンコードされたファイルを に設定しPUTて本文に含めるだけでよいと考えるのは正しいでしょうか?Content-Typemultipart/form-data; boundary=[[boundary here]]

var client:HttpClient = new HttpClient();
var request:HttpRequest = new Put();
request.body =  UploaderPostHelper.getPostData( filename,  byteArray);
request.contentType = 'multipart/form-data; boundary=' + UploaderPostHelper.getBoundary();
client.request(new URI(signedUrl), request);

http://msdn.microsoft.com/en-us/library/windowsazure/dd179451.aspx

(UploadPostHelper のソース コードはこちらhttps://code.google.com/p/as3asclublib/source/browse/trunk/net/UploadPostHelper.as )

次に、POST リクエストとヘッダーを使用して PUT リクエストを実行するように指定できますか?

乾杯。

4

2 に答える 2

3

署名付き URL を使用して BLOB をアップロードする場合、ドキュメントに記載されているようにすべてのヘッダーを含める必要はないと思います。

Content-Lengthと の 2 つのヘッダーを指定する必要がありますx-ms-blob-type。ファイルをブロック BLOB として保存していると想定しているため、 の値x-ms-blob-typeBlockBlob.

また、Content-Typeはファイルのコンテンツ タイプである必要があります (例:などplain/txt) 。image/gif

次に、POST リクエストとヘッダーを使用して PUT リクエストを実行するように指定できますか?

これについてはわかりません。リクエストのHTTP方法はPUT.

于 2013-09-17T09:25:07.673 に答える
2

PUT 操作には、x-ms-version、Authorization、Date または x-ms-date、Content-Length、および x-ms-blob-type がすべて必要です。Content-Type はオプションです。

http://msdn.microsoft.com/en-us/library/windowsazure/dd179451.aspxを参照してください。

于 2014-03-16T03:48:08.600 に答える