【发布时间】:2018-03-04 22:41:35
【问题描述】:
我是 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"}
Item 对象只有 2 个字段,name 和 price
它命中 Laravel 控制器,但 $request 变量为空...
我用 Postman 尝试了同样的 POST,效果很好,所以它一定是 Angular 的。
有什么想法吗?
【问题讨论】:
-
你的 chrome 开发控制台说什么?当您“发送”实际发送的数据时,XHR 过滤器有什么错误吗?
-
好吧,Laravel 给我发了一个 FK Not Null 错误,因为我尝试插入一个不能为空的空名称
-
我说的是this。
-
是的,我也是 :) 好吧,在我的控制器中,我只是执行
return json_encode($request->all());但它返回:[] 无属性(在 chrome XHR 预览中)。如果我在不记录任何内容的情况下运行我的脚本,它会给我一个 500 并带有 SQL FK 错误
标签: javascript php angularjs laravel