我合并了一个ASP.NET和一个HTML / jQuery项目。 ASP.NET项目使用会话ID,但它不会显示在我的后台请求中。 我看到" ASP.NET_SessionId"在浏览器cookie中,但JS无法访问它。 如何告诉浏览器使用" ASP.NET_SessionId"什么时候连接到服务器? 我可以通过$ .post()函数设置它吗?
答案 0 :(得分:0)
您无法访问会话Cookie,因为它已设置为仅HTTP。
因此出于安全原因,它会被JavaScript隐藏。将它暴露给JavaScript会是一个巨大的安全漏洞。
答案 1 :(得分:0)
在我看来,我解决了我原来的问题。 我只是从URL获取会话ID,然后将其包含在帖子URL中。 我做了一个简单的辅助函数,可以清楚地看到所有内容:
getSessionIDFromURL = function()
{
var sPathName = window.location.pathname;
var urlRegex = "/(\\(S\\([a-z0-9]+\\)\\))/";
var sSessionID = sPathName.match(urlRegex);
return sSessionID[1];
}
var sBaseURLWithSessionID = "/" + getSessionIDFromURL() + "/";

现在我的XHR请求适用于我的ASP.NET会话。