【问题标题】:Ajax in laravel 5.3 giving 404 file not found errorlaravel 5.3 中的 Ajax 给出 404 文件未找到错误
【发布时间】:2017-01-11 13:42:55
【问题描述】:

我正在尝试在单击按钮时发送 ajax 请求。但是我在 Chrome 控制台中收到 404 文件未找到错误。我做错了什么?请帮助我。这是我来自 html 文件的代码

 <input type="button" onclick="deleteOrder('<?php echo csrf_token(); ?>')" value="Click here">

这是我的 Web.php 文件中的路线

Route::post('/deleteOrder',['as'=>'deleteorder','uses'=>'OrderController@deleteOrders']);

这是我的控制器文件中的代码

class OrderController extends Controller
 {
public function deleteOrders(){
    echo "testing";

}
    }

这是我来自 Js 文件的 javascript 代码

function deleteOrder(token){
console.log('test');
$.ajax({
    type:'POST',
    url:'/deleteOrder',
    data:'_token = '+token,
    success:function(data){
       console.log(data)
    }
});
   }

我是 Laravel 的新手,我正在使用 laravel 5.3。我对这件事感到震惊。请帮帮我。在此先感谢。

【问题讨论】:

  • 在你的 ajax 代码中试试这个。代替数据 => 数据:{''_token':token},

标签: ajax laravel-5.3


【解决方案1】:

试试这个。首先,创建完整的 url:

<input type="button" onclick="deleteOrder('<?php echo csrf_token(); ?>', '<?php route('deleteorder') ?>')" value="Click here">

然后:

function deleteOrder(token, url){
    console.log(url);
    $.ajax({
        type:'POST',
        url: url,
        data: {
            "_token": token
        }
        success:function(data){
           console.log(data)
        }
    });
}

【讨论】:

    【解决方案2】:

    您可以将令牌传递为

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

    先放

    <meta name="_token" content="{{ csrf_token() }}"/>
    

    在表格上方

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-10
      相关资源
      最近更新 更多