飘飘悠悠 发表于 2015-1-16 22:21:27

ASP.NET编程:ASP.NET猎取不到js写的cookie办理办法

前天傍晚我发表了《Java的跨平台就是一句谎言。》,原本就是周末闲来无事,发表一篇略带争议性的博文让大家都来吵吵架,发表自己的看法,根本就没想着谁把谁打倒,一个行业或者是技术阵营是无法用短期口水仗打到对手的。</p>今晚利用javascript设置一个去路的cookie,以后利用ASP.NET猎取这个cookie值,发明ASP.NET猎取不到JS设置的cookie值,真忧郁中,以下是JS写Cookie的代码:
Code//写cookiesfunctionsetCookie(name,value){document.cookie=name"="escape(value)";";//设置的cookie封闭扫瞄即生效}//JS设置去路写进到cookiesetCookie("fromUrl",document.referrer);以下是ASP.NET读取cookie代码:
Code///<summary>///读取Cookies///</summary>///<paramname="str"></param>///<returns></returns>publicstringGetCookies(stringkey){if(System.Web.HttpContext.Current.Request.Cookies!=null){string_cstr=System.Web.HttpContext.Current.Request.Cookies.Value.ToString();Encodingstre=Encoding.GetEncoding("UTF-8");returnSystem.Web.HttpUtility.UrlDecode(_cstr,stre);}else{returnstring.Empty;}}//猎取cookiestringreferer=GetCookies("fromUrl");在这里ASP.NET利用UTF-8编码来解码JS写cookie的值,要否则取到的cookie会有些分歧。
就是以下代码呈现ASP.NET竟然猎取不到js写的cookie,那怎样办呢?别急,上面是办理办法:
从头改一下js代码,以下:
Code[//写cookiesfunctionsetCookie(name,value){document.cookie=name"="escape(value)";path=/";//设置的cookie封闭扫瞄即生效}加多了一个path=/,就好了。就这么复杂。
这里设置了Cookie的Path属性,必需在客户端和服务器端同时设置Path="/"属性,才干js和ASP.NET对Cookie的操纵才干互相感化!别的一个是编码的成绩,这里JS中的编码为encodeURI对应ASP.NET的Server.URLEncode。
dodo
原文:http://www.xueit.com/html/2009-12-06/21-984180469828.html
本文版权回作者和学IT网共有,接待转载,但未经作者批准必需保存此段声明,而且保存原文链接。不然保存究查功令义务的权力。
我有个同学,他是搞Java的,他给我说“Java不是效率低,而是速度慢。”,我不是搞Java的,我实在想不透这句话的含义,难道执行速度不就是效率低吗?难道执行速度慢还成效率高了?

小妖女 发表于 2015-1-17 19:23:25

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。

爱飞 发表于 2015-1-21 07:44:41

业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。

深爱那片海 发表于 2015-1-30 11:32:23

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。

兰色精灵 发表于 2015-2-6 11:00:01

这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。

再现理想 发表于 2015-2-16 00:31:41

ASP.net的服务器,要求安装一个.net环境,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。Asp.net1.1的就装Framework1.1,Asp.net2.0的就装Framework2.0。

柔情似水 发表于 2015-3-4 19:22:30

主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。

小魔女 发表于 2015-3-11 20:47:05

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。

透明 发表于 2015-3-19 12:52:37

主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。

飘灵儿 发表于 2015-3-28 03:12:26

但是java靠开源打出的一片天地,特别是在微软的垄断下能打开今天的局面还是有它的生命力的。
页: [1]
查看完整版本: ASP.NET编程:ASP.NET猎取不到js写的cookie办理办法