Php 用API理解400错误请求
我最初认为我的代码中可能有错误,但我已经做了进一步的测试,发现了奇怪的行为,我希望找到原因。所以我有一个简单的API路由Php 用API理解400错误请求,php,json,api,laravel,Php,Json,Api,Laravel,我最初认为我的代码中可能有错误,但我已经做了进一步的测试,发现了奇怪的行为,我希望找到原因。所以我有一个简单的API路由 Route::group(['prefix' => 'api/v1'], function () { Route::post('createProject', ['uses' => 'ProjectAPIController@createProject']); }); 这将调用一个只返回成功消息的函数 public function createProj
Route::group(['prefix' => 'api/v1'], function () {
Route::post('createProject', ['uses' => 'ProjectAPIController@createProject']);
});
这将调用一个只返回成功消息的函数
public function createProject(Request $request)
{
return response()->json(["Success", 200]);
}
我为使用此API构建的应用程序收到了错误的请求响应,因此我转入了Postman
现在,在Postman中,如果我对这个路由执行Post请求,并通过主体传递JSON,我仍然会看到错误的请求。但是,如果我将JSON设置更改为text,就会看到成功响应。因此,我发现由于某种原因,API不再喜欢向其发送JSON
这有什么原因吗
谢谢你没有正确格式化JSON:
public function createProject(Request $request)
{
return response()->json(["Success", 200]);
}
响应应采用以下格式:
(数据、状态码)
所以,上面的回复应该这样写:
return response()->json(["Success" => true],200);
传递给json方法的第一个参数的数据是关联数组,然后在第二个参数中传递状态代码。谢谢,有什么原因API不喜欢我传递的json吗?为此,我必须查看API调用返回的详细响应。你能发布它吗?嗨,我已经检查了我的日志,我看到ModSecurity:JSON支持不是enabledRight,这就解释了它。那么您的请求现在可以正常工作了吗?不,试图找出错误的含义,认为它与服务器相关