トップ回答者
マルチパートアップロードでのサーバーレスポンスについて

質問
-
お世話になります。
マルチパートでのデータをアップロードした時にアップ先サーバーから返された結果を受け取るにはどのようにすれば良いのでしょうか。
サンプルコードなどを見ると送る方法は分かるのですが、送り先のサーバーが独自に返すテキスト文字(正常、エラー、その他文字列)など受け取るやり方が見つかりません。
例えば下記のコードの場合(JavaScript)、どのようにレスポンスを受け取れば良いのでしょうか?
※ コードが部分的で申し訳ありません。
var bt = Windows.Networking.BackgroundTransfer;
var upload = new bt.BackgroundUploder();
var contentparts = [];
var part;
part = new bt.BackgroundTransferContentPart();
part.setHeader('Content-Disposition', 'form-data"; name="api_key"');
pat.setText("1234567890");
contentParts.push(part);
※いくつかのデータを設定
part = new bt.BackgroundTransferContentPart();
part.setHeader('Content-Disposition', 'form-data"; name="photo"; filename="' + file.name + '"');
part.setHeader('Content-Type', 'image/jpeg');
part.setFile(file);
contentParts.push(part);
uploader.createUploadAsync(uri, contentParts).then(function (uploadOperation) {
upload = uploadOperation; // uploadは外部定義
promise = uploadOperation.startAsync().then(complete, error, progress); // promiseは外部定義
});
function progress() {
}
function complete() {
console.log(upload.guid + " - upload comlete. Status code: " + upload.getResponseInformation().statusCode();
// HTTPのステータスではなく、接続サーバーがechoなどで返す値を受け取りたい。
}
function error(err) {
}
回答
-
試してませんが、UploadOperation::getResultStreamAtでいけませんか?
IInputStreamから文字列として読み取るのはDataReaderかな。
すべての返信
-
試してませんが、UploadOperation::getResultStreamAtでいけませんか?
IInputStreamから文字列として読み取るのはDataReaderかな。