【问题标题】:How to pass jwt token in ajax datatable header laravel如何在ajax数据表头laravel中传递jwt令牌
【发布时间】:2020-05-14 08:41:19
【问题描述】:

您好,我在 laravel 数据表中需要帮助,我在会话中获取令牌但它不起作用,那么如何在数据表 ajax laravel 中传递 haader,这是我的工作代码。但它给我错误令牌是必需的。

var token = localStorage.getItem('jwt_token');
console.log(token);
//$.fn.dataTable.ext.errMode = 'throw';
 $('#kt_table_1').dataTable().fnDestroy();
 $('#kt_table_1').DataTable({
    processing: true,
    serverSide: true,
    dataType: 'JSON',
    serverMethod: 'GET',
    headers: {
        'Authorization': token,
    },
    ajax: '{{route('api-product')}}',
    columns: [
     {
          data : null,
          "bSortable": false,
          'render': function (data, type, row) {
            return '<button type="button" data-id="' + data.id + '" id="edit" class="btn btn-primary" data-toggle="tooltip" title="" data-original-title="Quick Edit">Edit</button>\t\t\t\t\t\t<button type="button" data-id="' + data.id + '" id="delete" class="btn btn-danger" data-toggle="tooltip" title="" data-original-title="Quick Edit">Delete</button>'; 
          }
      },
      { data: 'id', name: 'id' },
      { data: 'name', name: 'name' },
    ]
  });

【问题讨论】:

    标签: ajax laravel datatable jwt-auth


    【解决方案1】:

    我不确定您在api.phpweb.php 中的路线。有可能,它要求 csrf_token。请尝试在对象内传递令牌为

    ...DataTable({
        data: {
            "token": "{{ csrf_token() }}",
        }
        ...
    });
    

    如果您正在使用 Oauth 并希望传入 JWT 屏障令牌,请参考此内容。 https://laravel.com/docs/5.8/api-authentication#passing-tokens-in-requests

    除了您的解决方案之外,我建议您先使用 Axios https://github.com/axios/axios 获取数据,然后再填充到 Datatable 中,因为您将来可能会遇到分页问题(取决于您的需要)。

    【讨论】:

    • 谢谢nocsrf token,我要传jwt token,
    猜你喜欢
    • 2014-04-19
    • 1970-01-01
    • 2022-11-10
    • 2020-01-31
    • 2019-07-25
    • 1970-01-01
    • 1970-01-01
    • 2016-09-13
    • 2021-09-27
    相关资源
    最近更新 更多