[英]how read cookie value using javascript created in Asp.net C#
[英]Unable to read the cookie created dynamically in ASP C# application
我正在通過在按鈕click事件中調用js方法(使用Page.ClientScript.RegisterStartupScript )從背后的代碼創建cookie,一旦創建,我就試圖使用cookie值來實現我的邏輯,但是我無法讀取Cookie,直到加載下一頁。
C#代碼:
protected void submitKey(object sender, EventArgs e)
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "Call my function", " createCookie('testvalue');", true);
vendorManagementDiv.Style.Add("display", "block");
doLogic();
}
private String doLogic{
var request = HttpContext.Current.Request;
HttpCookieCollection cookies = request.Cookies;
foreach (String cookieName in cookies.AllKeys)
{
if (cookieName.Equals("testcookie"))
{
key = request.Cookies["testcookie"].Value;
}
}
return key;
}
JS功能:
function createCookie(cookievalue)
{
var expires = "";
var date = new Date();
date.setTime(date.getTime() + (1 * 24 * 60 * 60 * 1000));
expires = ";expires=" + date.toGMTString();
document.cookie = "testcookie=" + cookievalue+ expires + ";path=/";
}
這里的問題是我無法在調用的doLogic方法中讀取cookie'testcookie'的值。 我想在同一回發中創建cookie值后讀取它。
但是只有在下一篇文章中,doLogic方法才能獲取cookie值。
是不是因為它不是Request.Cookies的一部分而無法閱讀testCookie的情況? 換句話說,您在生成請求之后創建了cookie。 在這種情況下,您的新cookie不會不在Request.Cookies列表中,因為那時cookie不存在嗎? 我認為這就是正在發生的事情。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.