更新されたユーザーの詳細のフォームデータをバックエンドに送信しようとしていますが、角度2のどのノードサーバーでもフォームデータを送信できませんでした。サーバーは500のステータスで応答します。私はangular.toJson、angular.identityとTRANSFとして、角度2でこれを行う方法を理解することができませんでしたこの、 サービスファイル角度2のhttp投稿要求でフォームデータを送信するにはどうすればよいですか?
var fd = new FormData();
var user = {
_id: StorageFactory.getUserDetail()._id,
loc: locDetails
};
fd.append('user', angular.toJson(user));
UserService.update(fd).
$promise.then(
function(value) {
console.info(value);
updateUserDetailsInStorage();
},
function(err) {
console.error(err);
}
);
としてのコントローラで
update: {
method: 'POST',
params: {
dest1: 'update'
},
transformRequest: angular.identity,
'headers': {
'Content-Type': undefined
}
}
ormrequest機能は、私は多くの記事を読んで、いくつかのことを試してみました、2角度で使用できない これまでのところ、私は角2で次のように行っている、
let fd = new FormData();
let user = {
_id: this.appManager.getUserDetail()._id,
loc: locDetails
};
fd.append('user', JSON.stringify(user));
this.userService.update(fd).subscribe((value) => {
console.log(value);
this.updateUserDetailsInStorage();
}, (err) => {
console.error(err);
});
HTTPサービスファイル
update(body) {
console.log('update', body);
const headers = new Headers({
'Content-Type': undefined
});
const options = new RequestOptions({
headers: headers
});
return this.http.post(`${app.DOMAIN}` + 'user/update', body, options)
.map((res: Response) => {
res.json();
}).do(data => {
console.log('response', data);
})
}
が、これまでのところ成功しなかった、誰も私にこれをする方法を提案することができますか?
は?コンソールにエラーがありますか? – echonax
コンソールエラーはありません。サーバーは500のステータスで応答しますが、anglejsで作成したのと同じアプリケーションを実行すると完全に動作します – Idlliofrio
投稿URLが正しいことがわかっている場合は、JSON.stringify body変数あなたは送っていますか?おそらく 'Content-Type'を 'application/json'に変更する – echonax