gpt4 book ai didi

javascript - 如何在 Angular 2 的 http post 请求中发送表单数据?

转载 作者:数据小太阳 更新时间:2023-10-29 04:25:30 25 4
gpt4 key购买 nike

我正在尝试将更新后的用户详细信息的表单数据发送到 Angular 2 中哪个节点服务器的后端,但是我无法发送表单数据并且服务器响应状态为 500,在 angularjs 中我做了一些事情像这样,服务文件

  update: {
method: 'POST',
params: {
dest1: 'update'
},
transformRequest: angular.identity,
'headers': {
'Content-Type': undefined
}
}

在 Controller 中作为

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);
}
);

我不知道如何在 angular 2 中执行此操作,因为 angular.toJson、angular.identity 和 transformrequest 功能在 angular 2 中不可用,到目前为止,我已经在 Angular 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);
})
}

我已经阅读了很多帖子并尝试了一些方法,但到目前为止都没有成功,有人可以建议我如何做吗?

最佳答案

如果您的服务器 Controller 需要它,您可以添加 header ,否则您可以像这样简单地发布它

let body = new FormData();
body.append('email', 'emailId');
body.append('password', 'xyz');
this.http.post(url, body);

关于javascript - 如何在 Angular 2 的 http post 请求中发送表单数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41031890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com