天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

ASP與ASP.NET互通COOKIES的一點經驗

  在微軟推出.NET并進行了大規模的推廣普及之后,ASP.NET逐漸進入了信息化系統開發的主流。但與此同時,而用ASP開發的舊系統面則臨被整合,這時,面臨一個問題:ASPASP.NET互相整合時,其中文COOKIES信息無法被互通共享,當使用ASP.NET寫入中文COOKIES信息后,使用ASP進行讀取,讀出來的卻是亂碼,而非中文。
    后來通過查找資料,不停地實踐,終于找到了問題的根源,中文COOKIES信息在ASP中無法被正確讀取得原因為其中文編碼格式不同。
    開發項目Web.config配置文件中有如下信息:

    <!--  全球化          此節設置應用程序的全球化設置。    -->
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" />

    據此可知,在沒有進行項目特殊配置的情況下,系統中的中文COOKIES信息默認是通過“utf-8”編碼方式進行傳遞的,而ASP中中文COOKIES信息默認是通過“GB2312”編碼方式進行傳遞的,所以ASPASP.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信息在ASPASP.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()

    以上為本人在工作中的一些小小經驗總結,可能會有不準確的地方,望大家批正!

 

AspNet技術ASP與ASP.NET互通COOKIES的一點經驗,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 在线观看亚洲AV无码每日更新 | 国内九一激情白浆发布 | 么公一夜要了我一八次视频HD | 国产午夜视频在永久在线观看 | 人善交XUANWEN200喷水 | 九九精品视频在线播放 | 亚洲乱码中文字幕久久孕妇黑人 | 美女用手扒开粉嫩的屁股 | 欧美日韩国产高清综合二区 | 欧美午夜理伦三级在线观看 | 男人扒开添女人屁股 | 国产亚洲人成网站在线观看播放 | 精品区2区3区4区产品乱码9 | 成人影院久久久久久影院 | 果冻传媒在线播放 | 精品性影院一区二区三区内射 | 亚洲欧美中文在线一区 | 伊人久久综合热青草 | 日本浴室日产在线系列 | 日韩一区二区三区免费体验 | 国产精品亚欧美一区二区三区 | 成人小视频在线免费观看 | 特级毛片内射WWW无码 | 俄罗斯bbbb | 久久ZYZ资源站无码中文动漫 | 美女被爆羞羞天美传媒 | 一本道综合久久免费 | 老师的蕾丝小内内湿透了 | 在线看片成人免费视频 | good神马电影伦理午夜 | 国语自产二区高清国语自产拍 | 伊人久久中文大香线蕉综合 | 午夜理论片YY4399影院 | 国产精品无码久久久久不卡 | 久久精品一区二区免费看 | 免费果冻传媒2021视频 | 久久婷婷五月综合色丁香 | 国产AV无码一二三区视频 | 日韩欧美中文字幕在线二视频 | 秋霞电影在线观看午夜伦 | 潮 喷女王cytherea|