名为"Cookie"的标头并不总是使用 Firefox 设置的



我使用ajax在javascript函数中发布到端点。在我发帖之前,我在请求上设置了一个名为"Cookie"的标题。我已经尝试过使用beforeSend和"headers"设置标头(请参阅下面的代码),但标头只是偶尔设置的。大多数情况下,"Cookie"标头未设置。我可以通过查看Post请求的firebug中的标头来判断这一点。我只对名为"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
});

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

不可能用XHR设置cookie头http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader()-方法

它似乎起作用的唯一原因可能是浏览器发送了实际的cookie。

最新更新