ファイルをサーバーにアップロードしようとしているので、データjsonをformDataに変換し、ファイルを追加してからリクエストに送信しました。requesPayloadに表示されるリクエスト ペイロードは JSON ではなく、別のものです。
ここに添付されているのは、リクエスト ペイロードのスクリーンショットです。
コンポーネント関数コードは次のとおりです。
doSubmit(data){
const fd = new FormData();
fd.append('name','Tirthraj');
fd.append('file',this.myFile);
for (var key in data) {
if (data.hasOwnProperty(key)) {
fd.append(key,data[key])
console.log(key + " -> " + data[key]);
}
}
this.myService.doUploadDataWithFile(fd).then();
}
サービス機能は次のとおりです。
doUploadDataWithFile(data): Promise<any> {
let headers = new Headers();
// headers.append('Content-Type', 'multipart/form-data');
headers.append('Content-Type', 'undefined');
let options = new RequestOptions({ headers: headers });
console.log("ADDElearning DATA", data);
return this.http.post("SERVER_API", data, options).toPromise();
}
リクエストのペイロードは次のとおりです。
------WebKitFormBoundary5Ga9J56YQxt16Ey4
Content-Disposition: form-data; name="name"
Tirthraj
------WebKitFormBoundary5Ga9J56YQxt16Ey4
Content-Disposition: form-data; name="file"; filename="524347_335264113233857_1091003137_n.jpg"
Content-Type: image/jpeg
------WebKitFormBoundary5Ga9J56YQxt16Ey4
Content-Disposition: form-data; name="module_title"
312
------WebKitFormBoundary5Ga9J56YQxt16Ey4
Content-Disposition: form-data; name="module_synopsis"
123
------WebKitFormBoundary5Ga9J56YQxt16Ey4
Content-Disposition: form-data; name="estimated_time"
321
------WebKitFormBoundary5Ga9J56YQxt16Ey4
Content-Disposition: form-data; name="module_type"
scorm12
------WebKitFormBoundary5Ga9J56YQxt16Ey4
Content-Disposition: form-data; name="article_title"
123312
------WebKitFormBoundary5Ga9J56YQxt16Ey4
Content-Disposition: form-data; name="article_description"
321
------WebKitFormBoundary5Ga9J56YQxt16Ey4--
今の状態ではなく、JSON オブジェクトのようにしたいのです。誰か助けてくれませんか?