首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 操作系统-> Linux教程
ASP与ASP.NET互通COOKIES的一点经验-ASP教程,ASP应用
作者:网友供稿 点击:88
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
 

    在微软推出.net并进行了大规模的推广普及之后,asp.net逐渐进入了信息化系统开发的主流。但与此同时,而用asp开发的旧系统面则临被整合,这时,面临一个问题:asp与asp.net互相整合时,其中文cookies信息无法被互通共享,当使用asp.net写入中文cookies信息后,使用asp进行读取,读出来的却是乱码,而非中文。
    后来通过查找资料,不停地实践,终于找到了问题的根源,中文cookies信息在asp中无法被正确读取得原因为其中文编码格式不同。
    开发项目web.config配置文件中有如下信息:

    <!--  全球化          此节设置应用程序的全球化设置。    -->
    <globalization requestencoding="utf-8" responseencoding="utf-8" />

    据此可知,在没有进行项目特殊配置的情况下,系统中的中文cookies信息默认是通过“utf-8”编码方式进行传递的,而asp中中文cookies信息默认是通过“gb2312”编码方式进行传递的,所以asp与asp.net的中文cookies信息在默认情况下无法被互通共享,但可以通过如下方法得以解决:
    用如下方法进行写cookie操作:

        ----------------------------------------------------------------
        name:        writecookie(byval strcookiename as string, byval strkeyname as string, byval strkeyvalue as string)
        parameters:
            [byval] strcookiename - cookie名字
            [byval] strkeyname - 键名字
            [byval] strkeyvalue - 键值。
        return:      string
        ----------------------------------------------------------------
        public function writecookie(byval strcookiename as string, byval strkeyname as string, byval strkeyvalue as string) as string
            dim objenc as system.text.encoding = system.text.encoding.getencoding("gb2312")
            strkeyvalue = system.web.httputility.urlencode(strkeyvalue, objenc)
            system.web.httpcontext.current.response.cookies(strcookiename)(strkeyname) = strkeyvalue
        end function

    以上方法实现了asp可以正确读取asp.net写入的中文cookies信息,但同时如果在asp.net中将读取过来的中文cookies信息直接在前台显示时还会显示为乱码,这是由于asp.net以“utf-8”编码方式显示“gb2312”编码方式的中文信息,所以出现了问题,可以用如下方法在前台页面正确显示中文信息:

        dim uname as string = system.web.httpcontext.current.server.urldecode(system.web.httpcontext.current.request.cookies(strcookiename)(strkeyname))
        dim objenc as system.text.encoding = system.text.encoding.getencoding("gb2312")
        uname = system.web.httputility.urldecode(uname, objenc)

    以上方法解决了中文cookies信息在asp与asp.net中无法被互通共享的问题,不过不知可不可以通过修改web.config配置文件中的编码方式,将“utf-8”编码方式改为“gb2312”编码方式解决上面的问题,应该是可以的,大家可以试一下,告诉我结果。

    在asp.net中我们一般通过如下方法清除cookies信息:

        sub cleancookies()
            dim i as integer
            dim cookie as system.web.httpcookie
            for i = 0 to system.web.httpcontext.current.request.cookies.count - 1
                cookie = system.web.httpcontext.current.request.cookies(i)
                system.web.httpcontext.current.response.cookies(cstr(cookie.name)).value = ""
                system.web.httpcontext.current.response.cookies(cstr(cookie.name)).expires = dateadd(dateinterval.day, -1, now)
            next
        end sub

    但在通过以上方法清除cookies信息并再次登录时asp将不能读取asp.net的cookies,其原因不知为何,但在上面的清除cookies信息方法中加入以下语句可解决无法正确清除cookies信息的问题:

        system.web.httpcontext.current.response.cookies.clear()

    以上为本人在工作中的一些小小经验总结,可能会有不准确的地方,望大家批正!

http://hszfzjd.cnblogs.com/archive/2006/06/29/438779.html


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·最简单的Struts程序-JSP教程,资料/其它
·利用激光供电的光电电流互感器
·java到structs-JSP教程,Java技巧及代码
·鼠标样式,整体背景图,滚动条的效果(网页效果)-ASP教程,ASP应用
·ASP中正则表达式的应用-ASP教程,正则表达式
·XML应用-利用XML 与XSL-.NET教程,XML应用
·.net 下用javascript调用webservice-.NET教程,Web Service开发
·Asp无组件上传进度条解决方案-ASP教程,组件开发
·破译动网验证码的简单方法-.NET教程,评论及其它
·linux系统文件命令精通指南(上)
最新文章
·mashups+ajax打造全新web开发_ajax教程
·windows vista系统中写字板应用全攻略_windows vista
·adsense单价持续低迷的解读_网赚技巧
·google反作弊小组成员专访_站长访谈
·端午议话:谈网站的特色_站长心得
·浅谈我的十点论坛管理经验_站长心得
·如何针对msn的onpage进行网页优化_站长心得
·用google 搜索框黏住易变的访问者_google推广
·google关键词广告每次点击付费(ppc)术语表_google推广
·确保万无一失的google 关键词广告公式_google推广
相关主题
  • asp与asp.net互通cookies的一点经验_asp.net技巧
  • ASP与ASP.NET在COOKIE方面的区别-ASP教程,ASP应用
  • ASP与ASP.NET的比较-ASP教程,ASP应用
  • ASP与ACCESS数据库-ASP教程,ASP应用
  • ASP与ACCESS数据库-ASP教程,数据库相关
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭