You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel中Ajax请求无响应,疑似MethodNotAllowedHttpException问题

问题排查求助

我的Web应用运行在Linux RHEL 7.9系统上,基于Laravel 5.0.33框架、PHP 5.4.16开发,通过Javascript+Ajax从MySQL拉取数据。之前一直运行正常,两天前突然出现下载操作无限期挂起的情况,期间没有修改任何代码。

已做的排查工作

前端Ajax请求代码

应用发起的Ajax请求代码如下:

var url = APP_URL+'/datatables/'+table_id+'/query';
$.ajax(url, {
    method: 'POST',
    data: {"query": query_str},
    dataType: 'json',
}).done(function (data) {
    // 已注释的业务逻辑代码
});

直接访问URL的错误反馈

将生成的URL直接粘贴到浏览器访问时,收到错误提示:

MethodNotAllowedHttpException in RouteCollection.php line 207.

对应的堆栈跟踪信息:

in RouteCollection.php line 207
at RouteCollection->methodNotAllowed(array('POST')) in RouteCollection.php line 194
at RouteCollection->getRouteForMethods(object(Request), array('POST')) in RouteCollection.php line 142
at RouteCollection->match(object(Request)) in Router.php line 729
at Router->findRoute(object(Request)) in Router.php line 652
at Router->dispatchToRoute(object(Request)) in Router.php line 628
at Router->dispatch(object(Request)) in Kernel.php line 214
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 141
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in VerifyCsrfTokenWithExcludedRoutes.php line 32
at VerifyCsrfTokenWithExcludedRoutes->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in ShareErrorsFromSession.php line 55
at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 61
at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 36
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 40
at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 42
at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 101
at Pipeline->then(object(Closure)) in Kernel.php line 115
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 84
at Kernel->handle(object(Request)) in index.php line 53

路由配置验证

执行artisan route:list命令查看路由列表,显示该路由明确支持POST方法:

POST | datatables/{datatables}/query | query.create | App\Http\Controllers\Datazoo\DatatableQueryDatazooController@query

请问这可能是什么原因导致的?


内容的提问来源于stack exchange,提问作者Marina Frants

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 23:01:34