現在のところ、利用可能なアップロードハンドラーの種類は 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;