asp.net webservice cookie 保存后NAME有值,Value却没有值 代码如下:

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net webservice cookie 保存后NAME有值,Value却没有值 代码如下:相关的知识,希望对你有一定的参考价值。

HttpCookie acookie = new HttpCookie("VOTE_USER");
acookie.Value = Name;(NAME是有值的)
HttpContext.Current.Response.Cookies.Add(acookie);
读取:
HttpCookie bcookie = HttpContext.Current.Request.Cookies["VOTE_USER"];
if (ucookie!= null)

return ucookie.Value;

else

return "";

就是得到的COOKIE的VALUE一直都是空的
我是在webservice 里面写的,跟这个有关系么?

HttpCookie acookie = new HttpCookie("VOTE_USER");
acookie.Value = Name;(NAME是有值的)
HttpContext.Current.Response.Cookies.Add(acookie);
读取:
HttpCookie bcookie = HttpContext.Current.Request.Cookies["VOTE_USER"];
if (ucookie!= null) ////这里写错了,应该是 bcookie

return ucookie.Value; ////这里写错了,应该是 bcookie

else

return "";

就是得到的COOKIE的VALUE一直都是空的

你改成这样看看。

HttpCookie cookie = new HttpCookie("VOTE_USER");
cookie["USER_GUID"] = Name;

DateTime dtNow = DateTime.Now;
TimeSpan tsMinute = new TimeSpan(30, 0, 0, 0);
cookie.Expires = dtNow + tsMinute;
Response.Cookies.Add(cookie);追问

做完VALUES也是没有值

追答

你的读取程序写错了。

读取:
HttpCookie bcookie = HttpContext.Current.Request.Cookies["VOTE_USER"];
if (ucookie!= null) ////这里写错了,应该是 bcookie

return ucookie.Value; ////这里写错了,应该是 bcookie

else

return "";

追问

不是写错的事情,我是跟踪的走的,bcookie 的时候已经没有值了

参考技术A 个人觉得楼主可能是不了解cookie的周期所致。
cookie和session等对象不同,session你一赋于它值,它马上就有值了。
但cookie,需要下一次打开这个页面,才能查询到上一次保存的cookie值。追问

我从新打开还是没有COOKIE啊

追答

哈哈,无意中发现,你没有指定cookie的生命周期。
acookie.Expires = DateTime.Now.AddYears(1);

追问

这个我改过很多次了,制定生命周期的时候还是步行啊

追答

你的问题的确很诡异。。。
莫非是浏览器禁止cookie写入?
HttpContext.Current.Request.Cookies["VOTE_USER"]
断点跟踪下这个东东是null不,如果是,则有可能。如果不是null,但它的value为空白。那真是匪夷所思了,呵呵

追问

我也纳闷,存进去的时候还好好的,一读取COOKIE的name有值,VALUE没有值了

参考技术B 怀疑楼主前后的HttpContext不是一个。
建议跟踪前后HttpContext的ID查证。追问

我前后只new过一个HTTPCONTENT啊

参考技术C HttpContext.Current.Request.Cookies[XXX]这个是不是静态函数啊, 否则就没有作用的!! 参考技术D 跨域了吧,它共享cookie吗?追问

怎么共享啊

追答

怎么说呢,一般不好共享的吧,因为远程的response不是你的程序的response
你可以把值用xml传到你的应用程序,在保存cookie或存其他地方

第5个回答  2011-05-23 您的ucookie哪来的?

以上是关于asp.net webservice cookie 保存后NAME有值,Value却没有值 代码如下:的主要内容,如果未能解决你的问题,请参考以下文章

如何在ASP.net中调用webservice里的一个方法

ASP.NET WebService - 实体框架

在 asp.net 中阻止对 WebService.asmx 的访问

Ajax请求WebService跨域问题

ASP.NET JS调用WebService——简单例子

asp.net WebService的一个简单示例