首页 文章

Laravel中的AJAX调用返回Http异常

提问于
浏览
0

当我尝试在laravel中使用ajax时,它显示以下错误,

{“message”:“”,“exception”:“Symfony \ Component \ HttpKernel \ Exception \ HttpException”,“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Exceptions \ Handler.php“,”line“:203,”trace“:[{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Exceptions \ Handler . php“,”“line”:175,“function”:“prepareException”,“class”:“Illuminate \ Foundation \ Exceptions \ Handler”,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ app \ Exceptions \ Handler.php“,”line“:49,”function“:”render“,”class“:”Illuminate \ Foundation \ Exceptions \ Handler“,”type“:” - > “},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php“,”line“:83,”function“:”render“,” class“:”App \ Exceptions \ Handler“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline . php“,”line“:55,”function“:”handleException“,”class“:”Illuminate \ Ro uting \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ View \ Middleware \ ShareErrorsFromSession.php“,” line“:49,”function“:”Illuminate \ Routing \ “,”class“:”Illuminate \ Routing \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151,”function“:”handle“,”class“:”Illuminate \ View \ Middleware \ ShareErrorsFromSession“ ,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php”,“line”:53,“ function“:”Illuminate \ Pipeline \ “,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Session \ Middleware \ StartSession.php“,”line“:63,”function“:”Illuminate \ Routing \ “,”class“:”Illuminate \ Routing \ Pipeline“ ,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ lara vel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151,”function“:”handle“,”class“:”Illuminate \ Session \ Middleware \ StartSession“,”type“:” - > “},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php“,”line“:53,”function“:”Illuminate \ Pipeline \ “,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Cookie \ Middleware \ AddQueuedCookiesToResponse.php“,”line“:37,”function“:”Illuminate \ Routing \ “,”class“:”Illuminate \ Routing \ Pipeline“,”type“:” - > “},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151,”function“:”handle“,” class“:”Illuminate \ Cookie \ Middleware \ AddQueuedCookiesToResponse“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php“,”line“:53,”function“:”Illuminate \ Pipelin e \ “,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Cookie \ Middleware \ EncryptCookies.php“,”line“:59,”function“:”Illuminate \ Routing \ “,”class“:”Illuminate \ Routing \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151,”function“:”handle“ ,“class”:“Illuminate \ Cookie \ Middleware \ EncryptCookies”,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php“,”line“:53,”function“:”Illuminate \ Pipeline \ “,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{ “file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php”,“line”:104,“function”:“Illuminate \ Routing \ ” ,“class”:“Illuminate \ Routing \ Pipeline”,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistan t \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Router.php“,”line“:667,”function“:”then“,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Router.php“,”line“:642,”function“:”runRouteWithinStack“ ,“class”:“Illuminate \ Routing \ Router”,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Router.php”,“line”:608,“function”:“runRoute”,“class”:“Illuminate \ Routing \”路由器“,”键入“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Router.php“,”line“:597 ,“function”:“dispatchToRoute”,“class”:“Illuminate \ Routing \ Router”,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Kernel.php“,”line“:176,”function“:”dispatch“,”class“:”Illuminate \ Routing \ Router“,”type“:” - >“} ,{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php”,“line”:30,“function”:“Illuminate \ Foundation \ Http \ “,”class“:”Illuminate \ Foundation \ Http \ Kernel“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ fideloper \ proxy \ src \ TrustProxies.php“,”line“:57,”function“:”Illuminate \ Routing \ “,”class“:”Illuminate \ Routing \ Pipe“ line“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151 ,“function”:“handle”,“class”:“Fideloper \ Proxy \ TrustProxies”,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php“,”line“:53,”function“:”Illuminate \ Pipeline \ “,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Middleware \ TransformsRequest.php“,”line“:31,”function“ :“Illuminate \ Routing \ ”,“class”:“Illuminate \ Routing \ Pipeline”,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151,”function“:”handle“,”class“:”Illuminate \ Foundation \ Http \ Middleware \ TransformsRequest“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Rou ting \ Pipeline.php“,”line“:53,”function“:”Illuminate \ Pipeline \ “,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{ “file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Middleware \ TransformsRequest.php”,“line”:31,“function”:“Illuminate \ Routing \” “,”class“:”Illuminate \ Routing \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151,”function“:”handle“,”class“:”Illuminate \ Foundation \ Http \ Middleware \ TransformsRequest“,”type“:” - >“},{ “file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php”,“line”:53,“function”:“Illuminate \ Pipeline \ ” ,“class”:“Illuminate \ Pipeline \ Pipeline”,“type”:“ - >”},{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Middleware \ ValidatePostSize.php“,”line“:27,”function“:”Illuminate \ Routi ng \ “,”class“:”Illuminate \ Routing \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151,”function“:”handle“,”class“:”Illuminate \ Foundation \ Http \ Middleware \ ValidatePostSize“,”type“:” - >“} ,{“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php”,“line”:53,“function”:“Illuminate \ Pipeline \ “,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Middleware \ CheckForMaintenanceMode.php“,”line“:62,”function“:”Illuminate \ Routing \ “,”class“:”Illuminate \ Routing \ Pipeline“,”type“:” - > “},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:151,”function“:”handle“,” class“:”Illuminate \ Foundation \ Http \ Middleware \ CheckForMaintenanceMode“,”type“:” - >“}, {“file”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Pipeline.php”,“line”:53,“function”:“Illuminate \ Pipeline \ “,”class“:”Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Pipeline \ Pipeline.php“,”line“:104,”function“:”Illuminate \ Routing \ “,”class“:”Illuminate \ Routing \ Pipeline“,”type“:” - >“},{”文件”:“C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Kernel.php”,“line”:151,“function”:“then”,“class”:“Illuminate \ Pipeline \ Pipeline“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Kernel.php“,” line“:116,”function“:”sendRequestThroughRouter“,”class“:”Illuminate \ Foundation \ Http \ Kernel“,”type“:” - >“},{”file“:”C:\ xampp \ htdocs \ TravelAssistant \ public \ index.php“,”line“:55,”function“:”handle“,”class“:”Illuminate \ Foundation \ Http \ Kernel“,”type“:” - >“},{”file “:”C:\ xampp \ htdocs \ TravelAssistant \ server.php“,”line“:21,”function“:”require_once“}]}

我的控制器代码是,

public function getPublicAttraction(Request $request)
    {
        return response(['msg'=>'success']);
    }

ajax电话,

<script>
    function getAttraction()
    {

        var pass= {'_token':$('meta[name="csrf-token"]').attr('content')

    };
    $.ajax({
            type:'POST',
            url:'{{route("Attractions")}}',
            datatype:'json',
            data: pass,
            success:function(data){
                $("#public_attractions").html(data.msg);
            }
        }).fail(function(jqXHR, textStatus, error){
            $("#public_attractions").html(jqXHR.responseText);
        });


    }
    $(document).ready(function(){
         getAttraction();
    });
</script>

带有csrf令牌的元标记,

<meta name="csrf-token" content="!!{csrf_token()}!!">

路由文件web.php条目,

Route::post('/getAttractions','AjaxController@getPublicAttraction')->name('Attractions');

我想我被卡住了,请帮忙 .

2 回答

  • 0

    为什么要重新发明一些正常工作的东西 .

    1st 刀片中的标记应如下所示:(您还有其他的!!出于何种原因)

    <meta name="csrf-token" content="{{ csrf_token() }}">

    2nd 将此代码放在主刀片中的某个位置:

    $.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
    });
    

    来源https://laravel.com/docs/5.7/csrf#csrf-x-csrf-token

  • 0

    好吧,除了CSRF元标记的方式外,一切看起来都很好,因为你不需要在csrf标记中转义任何东西,所以打印令牌的正确方法是: <!-- CSRF Token --> <meta name="csrf-token" content="{{ csrf_token() }}"> 这是我无法给你的最佳猜测,因为你没有提供响应的HTTP状态,也没有抛出异常的情况,异常消息也是空的所以..

相关问题