我正在尝试向控制器函数发出ajax POST请求,但我一直收到此错误。我遵循了在网上找到的建议,并在$.ajaxSetup
和X-CSRF-TOKEN
后面加上了字词,但还是没有运气。
“例外”: “ Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException”
web.php
Route::get('my-controller/mypostfunction', 'MyController@mypostfunction');
MyController.php
public function mypostfunction()
{
return "Hello poster!";
}
app.js
$( document ).ready(function()
{
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
// This alerts the CSRF token correctly!
alert( $('meta[name="csrf-token"]').attr('content') );
$.post( "my-controller/mypostfunction", function( data ) {
alert( "Data Loaded: " + data );
});
});
答案 0 :(得分:2)
在您的web.php文件中,您设置了get方法,因此只需将get
更改为post
方法类型
Route::post('my-controller/mypostfunction', 'MyController@mypostfunction');
答案 1 :(得分:1)
在您的 web.php 中,将获取的路由更改为发布,如下所示:
Route::get('my-controller/mypostfunction', 'MyController@mypostfunction');
// into
Route::post('my-controller/mypostfunction', 'MyController@mypostfunction');
我希望这是解决方案。