我是Angular的新手,想要使用Angular进行POST,并使用Laravel 5.5接收它
这是我的Angular代码,似乎变量有数据:
onSubmit(form: NgForm): Promise<Item> {
console.log(form.value);
return this._http.post('http://api-test.dev/api/items', JSON.stringify(form.value))
.toPromise()
.then(res => res.json().data)
.catch(this.handleError);
}
console.log(form.value);
给了我:{name: "12", price: "2"}
项目对象只有两个字段name
和price
它击中了Laravel控制器,但$request
变量为空...
我和Postman一起尝试过相同的POST,它的效果很好,所以它一定是Angular的。
有什么想法吗?
答案 0 :(得分:0)
我不是那么专家。但我遇到了同样的问题。这样我发送了我的数据。
<a ng-click="logout()" onclick="setTimeout(function () { window.location = 'https://demo.test.ca/log'; }, 3000);">
</a>
它可以帮助你。
答案 1 :(得分:0)
我解决了它,包括标题:
onSubmit(form: NgForm): Promise<Item> {
const myHeaders = new Headers();
myHeaders.append('Content-Type', 'application/json');
const options = new RequestOptions({ headers: myHeaders });
return this._http.post('http://api-test.dev/api/items', JSON.stringify(form.value), options)
.toPromise()
.then(res => res.json().data)
.catch(this.handleError);
}
现在它有效!