如何在 JQGrid 中将令牌传递给请求 Headers

How to pass a Token to Request Headers in JQGrid

我的项目在 ASP Net Core with MVC 中。

我在视图中有一个 JQGrid。它工作得很好。 现在我必须使用属性授权控制器将 JWT 传递给 HttpContext 请求 Header。 在标准 Ajax 中,我知道 headers 属性将处理任务,但在 JqGrid 中,如何设置 headers?

我的代码如下所示:

 $("#jqgrid").CreateGrid({
            url: "/api/fares/getfares",
            headers: { "Authorization": 'Bearer ' + '@Model.JWToken' },                
            colNames: ['Id', 'From', 'To', 'Date', 'Airline', 'FlightNo', 'Dep.Time', 'Arr.Time'],
            colModel: [..........],
            pager: '#pjqgrid',
            sortname: 'Id',
            sortorder: "desc",
            loadonce: false,
            rows: 1,
            container: $('#div_jqgrid_container'),                
            loadingText: 'Loading..',
            noRecordText: 'No Records found',
        }, $("#jqgrid"));

以上代码有效,但未发送授权 header。 有人请提供一些帮助!!!

谢谢,终于搞定了。像这样在 hte jqGrid 代码主体中添加选项 loadBeforeSend 作为函数。现在它就像一个魅力!

$("#jqgrid").CreateGrid({
        url: "/api/fares/getfares",
        // headers: { "Authorization": 'Bearer ' + '@Model.JWToken' },                
        loadBeforeSend: function (jqXHR) {
            jqXHR.setRequestHeader("Authorization", 'Bearer ' + '@Model.JWToken' );
        },
        colNames: ['Id', 'From', 'To', 'Date', 'Airline', 'FlightNo', 'Dep.Time', 'Arr.Time'],
        colModel: [..........],
        pager: '#pjqgrid',
        sortname: 'Id',
        sortorder: "desc",
        loadonce: false,
        rows: 1,
        container: $('#div_jqgrid_container'),                
        loadingText: 'Loading..',
        noRecordText: 'No Records found',
    }, $("#jqgrid"));

ps:如果有人想要完整的代码,请在此处发表评论,我将 post 完整的 jqGrid 详细信息。