该项目正在我的本地服务器上正常运行。但是将项目上传到服务器后,我得到了
此路由不支持GET方法。支持的方法:POST。
错误。我使用了Laravel 6.0
Api.php:
Route::post('rates', 'ShippoController@rates');
控制器:
public function rates(Request $request){
$validatedData = $request->validate([
'email' => 'required|email',
'name' => 'required',
'token' => 'required',
]);
try{
$carts = Cart::whereToken($request->token)->get();
if (count($carts) == 0){
return response()->json([
'status' => 0,
'message' => 'Invalid cart token.',
], Response::HTTP_NOT_IMPLEMENTED);
}
...
return response()->json([
'status' => 1,
'data' => $data,
], Response::HTTP_OK);
}
catch (\Exception $e){
return response()->json([
'status' => 0,
'message' => $e->getMessage()
], Response::HTTP_BAD_GATEWAY);
}
}
答案 0 :(得分:1)
您的问题是http://canvas.safedevs.com/重定向到https://canvas.safedevs.com/。发生重定向时,POST会转换为GET,并且帖子数据会丢失。
将请求发送到端点的HTTPS版本,它应该可以正常工作。
失眠apparently has a feature to disable automatically following redirects,您可以考虑将其打开。这样可以使您更好地了解此类问题。