0

我正在使用 ajax 发布到 javascript 函数中的端点。在发布之前,我在请求中设置了一个名为“Cookie”的标头。我曾尝试使用 beforeSend 和使用 'headers' 设置标头(请参见下面的代码),但仅有时会设置标头。很多时候“Cookie”标头没有设置。我可以通过查看 Firebug 中 Post 请求的标头来判断这一点。我只对名为“Cookie”的标题有这个问题。所有其他标题都是一致设置的。我无法将“Cookie”标头的名称更改为其他值,因为它是我正在调用的服务所必需的。

$.ajax({
    url:url,
    type:'POST',
    contentType: "application/xml",
    beforeSend: function (request)
        {
            request.setRequestHeader("Cookie", authCookie);
            request.setRequestHeader("Authorization", "Authentication id=company.platform.services.org.test,app_secret=aEWEvsddsdddddds0");
        },
    headers: {"Cookie": "abc.etc.authid=" + companyID + ",abc.etc.ticket=" + ticket, "Authorization": "Authentication id=company.platform.services.org.test,app_secret=aEWEvsddsdddddds0"},
    data: order,
    success: createOrderCallback,
    error: createOrderError
});

是否有更好的方法来设置此标头以确保始终为每个请求设置它?

4

1 回答 1

1

无法使用 XHR http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader()-method设置 cookie 标头

它似乎工作的唯一原因可能是因为您有浏览器发送的实际 cookie。

于 2013-07-03T15:27:28.777 回答