说我从https://test.mycompany.com/app01/index.html托管我的网站。 Index.html是我的登录页面。 https://test.mycompany.com:10000是我的后端。 Grapevine为后端提供动力。我按如下方式设置我的cookie:
Dim token As IdentityModel.Tokens.Jwt.JwtSecurityToken = Nothing
Dim j As String = JWT.Serialize(FetchSetting("JWTKey"), String.Empty, String.Empty,
ClaimsIdn, token, FetchSetting("GlobalTimeout"))
Dim AuthCookie As New Net.Cookie("Authorization", j) With {
.Expires = token.ValidTo,
.Path = "/",
.Domain = "test.mycompany.com"
}
Context.Response.Cookies.Add(AuthCookie)
当我登录时,我会通过Chrome控制台进行监控。登录返回200.在网络>下(登录POST请求),我看到 Cookies 选项卡。我还可以在 Headers 标签下看到 Set-Cookie 标头(在响应标题下)。在应用程序>饼干,它是空的。如果我要将该字符串粘贴到控制台并将其设置为document.cookie
,则表明它已正确设置(并且可以从应用程序> Cookie中查看)。
答案 0 :(得分:0)
这是CORS的问题:
如果两个URL的协议,端口(如果指定)和主机相同,则两个URL的来源相同。您可能会看到这被称为“方案/主机/端口元组”,或仅称为“元组”。 (“元组”是一组项目,它们一起构成一个整体-双重/三重/四重/五重/等的通用形式。) https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy
从4.1.1版开始,CORPvine仍在使用CORS功能,与此同时,也可以在此处找到有关变通方法的讨论: