我正在尝试对Laravel post方法进行ajax调用。但我得到 MethodNotAllowedHttpException 。其中一个可能的问题可能是ajax调用和路由控制器中的请求类型不匹配,但事实并非如此。
使用邮递员,我可以确认邮政路线工作正常。这让我可以选择专注于AJAX调用。
routes.php文件
Route::post('/test', 'HomePageController@test');
custom.js
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
然后,
$('#teacher-save-submit').click(function(){
var fname = $('#first_name').val();
var lname = $('#last_name').val();
var email = $('#email').val();
var passkey = $('#passkey').val();
$.ajax(function(){
type:"POST",
url:"/test",
dataType: "json",
success:function(data){
console.log("success");
$('#sbt-result').html(data);
}
});
});
#Issue#2
在控制台中,它在url显示未捕获的SyntaxError:意外的令牌::“/ test”
如果你能分享你的经历,那就太棒了。
感谢。
答案 0 :(得分:0)
更改
^(?=\/page-title\/?\??(?!(.+\/)|-)).+
JS:
Route::post('test', 'HomePageController@test');
并阻止默认点击事件
url:"{{url('test')}}",
答案 1 :(得分:0)
也许你已经忘记了“meta”标签:
<meta name="csrf-token" content="{{ csrf_token() }}" />