【发布时间】:2016-11-24 11:42:40
【问题描述】:
我正在尝试对 Laravel post 方法进行 ajax 调用。但我得到 MethodNotAllowedHttpException。可能的问题之一是 ajax 调用和路由控制器中的请求类型不匹配,但事实并非如此。
使用 Postman,我可以确认 Post 路由工作正常。这让我可以选择专注于 AJAX 调用。
问题 #1
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);
}
});
});
#问题#2
在控制台中,它显示 Uncaught SyntaxError: Unexpected token : at url:"/test"
如果你们能分享你的经验,那就太棒了。
谢谢。
编辑
【问题讨论】:
-
尝试在您的 ajax
data: { '_token': token},的数据中发布 CSRF 令牌。在哪里token = '{{ csrf_token() }}'
标签: php jquery ajax http-post laravel-5.2