簡體   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