错误 405(发出 Ajax 请求时不允许使用该方法)
Posted
技术标签:
【中文标题】错误 405(发出 Ajax 请求时不允许使用该方法)【英文标题】:Error 405 (Method Not Allowed While Making an Ajax Request) 【发布时间】:2018-02-28 17:54:51 【问题描述】:这是我用来发出 Ajax 请求的 jQuery 代码:
$(".rowClick tr").click(function()
var id = $(this).data("id");
$.ajaxSetup(
headers:
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
);
$.ajax(
url: 'example/',
type: 'POST',
data: id: id,
)
.done(function()
console.log("success");
);
)
这是我写的路由代码:
Route::get('example/','example@exampleDetailController');
每当我发出 ajax 请求以在此 URL 上发布时,它都会给我一个 405(不允许的方法)。
为什么会出现这个错误?
【问题讨论】:
也许可以试试type: 'GET',
【参考方案1】:
因为您的 Ajax 请求是以 POST
提交的,但您将路由注册为 GET
。
改成:
Route::post('example/','example@exampleDetailController');
您可以阅读有关路由和其他方法的更多信息: https://laravel.com/docs/5.5/routing
【讨论】:
以上是关于错误 405(发出 Ajax 请求时不允许使用该方法)的主要内容,如果未能解决你的问题,请参考以下文章
在 Spring MVC 中映射 Ajax 请求:不允许出现错误 405 方法
来自 .aspx 页面的带有授权标头的 Ajax 发布请求给出错误“选项 405(不允许的方法)”
jQuery .ajax() POST 请求抛出 405(不允许的方法)但 GET 不会