現在のところ、利用可能なアップロードハンドラーの種類は UploadHandlerRaw
のみです。このクラスは、コンストラクション時にデータバッファを受け取ります。このバッファは内部的にネイティブコードメモリにコピーされ、リモートサーバがボディデータを受け入れる準備ができたら UnityWebRequest
システムによって使用されます。
Upload Handler は、コンテンツタイプ文字列も受け入れます。この文字列は、UnityWebRequest 自体に Content-Type
ヘッダーを設定しない場合に、UnityWebRequest のContent-Type
ヘッダーの値として使用されます。UnityWebRequest オブジェクトに Content-Type
ヘッダーを手動で設定した場合は、Upload Handler オブジェクトの Content-Type
は無視されます。
UnityWebRequest または UploadHandler
のいずれかに Content-Type
を設定しないと、システムはデフォルトで application/octet-stream
の Content-Type
を設定します。
byte[] payload = new byte[1024];
// ... playload をデータで満たします...
UnityWebRequest wr = new UnityWebRequest("http://www.mysite.com/data-upload");
UploadHandler uploader = new UploadHandlerRaw(payload);
// ヘッダー: "Content-Type: custom/content-type"; を渡します
uploader.contentType = "custom/content-type";
wr.uploadHandler = uploader;