繁体   English   中英

在服务器端设置的Cookie不能在客户端(ASP.NET)中访问

[英]Cookies set in Server side not accessible in client side (ASP.NET)

我在按钮事件中从服务器端设置cookie值,如下所示。

Private Sub btn_set_Click(sender As Object, e As EventArgs) Handles btn_set.Click
    Dim myCookie As HttpCookie = New HttpCookie("downloadToken", "sandeep")
    myCookie.Expires = Now.AddDays(1)
    myCookie.Secure = False
    myCookie.HttpOnly = True
    Response.Cookies.Add(myCookie)
End Sub

但是,当我使用JQUERY Cookie插件从客户端检查downloadToken的值时,它返回未定义。

 Cookies.get("downloadToken"); //returns undefined

在Response.cookies.add之后,立即有一个文件下载代码。 那实际上是在发送文件到客户端进行下载。

 Response.AddHeader("Content-Disposition", "attachment; filename=" & FileInfo.Name)
 Response.AddHeader("Content-Length", FileInfo.Length.ToString())
 Response.AddHeader("Connection", "Keep-Alive")
 Response.ContentType = “application/octet-stream”
 Response.ContentEncoding = Encoding.UTF8
 Response.TransmitFile(FileInfo.FullName)
 Response.Flush()
 Response.End()

我可以知道我的代码有什么问题吗?

我能够解决。 这是因为Httponly设置为true。

我改变了

myCookie.HttpOnly = False

现在在客户端获得价值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM