Laravel 如何从POST接收JSON?
我通过RESTAPI从Vue.JS客户机接收JSON,我希望使用Eloquent获取数据,但它不起作用。它不是刀片式的,也不是标准的表单提交数据,我从客户端接收JSON Api,单页应用程序 这是JSON,地址是来自客户端的路由'/order',方法POST:Laravel 如何从POST接收JSON?,laravel,Laravel,我通过RESTAPI从Vue.JS客户机接收JSON,我希望使用Eloquent获取数据,但它不起作用。它不是刀片式的,也不是标准的表单提交数据,我从客户端接收JSON Api,单页应用程序 这是JSON,地址是来自客户端的路由'/order',方法POST: { "name": "John", "phone": "+7 794 910 5708", "email": "example@gmail.com" } 路线是: Rout
{
"name": "John",
"phone": "+7 794 910 5708",
"email": "example@gmail.com"
}
路线是:
Route::post('/order','OrderController@order');
在控制器中,我尝试这样做:
<?php
namespace App\Http\Controllers;
use Request;
use App\Data;
class OrderController extends Controller
{
public function order()
{
$input = Request::all();
$data = new Data;
$data->name = $input['name'];
$data->phone = $input['phone'];
$data->save();
return response()->json(['result' => '200 OK'], 200);
}
}
根据以下内容进行一些更改:
在控制器中:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Data;
class OrderController extends Controller
{
public function order(Request $request)
{
$post = $request->all();
$data = Data::create($post);
if($data){
return response()->json(['success' => true, 'message' => 'Data has been inserted!']);
} else {
return response()->json(['success' => false, 'message' => 'Data not inserted, Something went wrong!']);
}
}
}
您是否尝试过通过转储接收到的请求数据进行调试?例如,您可以共享您在执行dd(request()->all())时获得的内容代码>?将此作为第一行放在订单函数中。