尝试发布AJAX请求时,POST 405(方法不允许) – Laravel 4

我试图发出一个简单的AJAX请求来填充Laravel中的菜单,但是,我在使其正常工作方面遇到了很多麻烦。

我不确定是什么问题,经过几个小时的搜索,我找不到任何有用的东西。

这是我的AJAX请求:

$.ajax({ type: 'POST', url: '/ajax/populateApiAuth', data: json, dataType: 'JSON', success: function (json) { alert('test'); return true; }, error: alert('fail') }); 

我的AJAX回调路线:

 Route::get('/ajax/populateApiAuth', 'ApiController@populateApiAuth'); 

和我的控制器来处理ApiController中的AJAX回调:

 public function populateApiAuth() { return Response::json(array('msg' => 'test'); } 

发送AJAX请求时,它返回错误参数中的失败消息,并在控制台中告诉我:

 POST http://localhost:8000/ajax/populateApiAuth 405 (Method Not Allowed) 

研究此错误消息,是因为向其他域/服务器发出POST请求? 怎么会这样?

我试图使用AJAX请求的绝对URL:

 url: '{{ URL::to("ajax/populateApiAuth") }} 

它给出了完整的URL: http://localhost:8000/ajax/populateApiAuth但这也没有解决问题。

这不是你的问题吗?

 Route::get('/ajax/populateApiAuth', 'ApiController@populateApiAuth'); 

您为GET请求设置了路由,但您尝试通过POST请求访问它。