最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

safari cookie設(shè)置中文失敗的解決方法

 更新時(shí)間:2016年08月04日 10:19:35   投稿:jingxian  
下面小編就為大家?guī)硪黄猻afari cookie設(shè)置中文失敗的解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

最近用H5進(jìn)行手機(jī)端開發(fā),由于是window操作系統(tǒng),為了方便開發(fā)和調(diào)試,直接在chrome瀏覽器上進(jìn)行測試,然后在android機(jī)上進(jìn)行手機(jī)端測試,當(dāng)功能基本完工后,原來在android上運(yùn)行正常的應(yīng)用,在IOS上運(yùn)行時(shí),出現(xiàn)很多奇怪的問題,根據(jù)排查,發(fā)現(xiàn)是由于cookie未取到值而導(dǎo)致相關(guān)信息無法獲取。

一開始以為是cookie中文亂碼的問題,后來跟蹤發(fā)現(xiàn),cookie的值壓根就沒賦值成功,網(wǎng)上查了資料,發(fā)現(xiàn)safari不允許非ASCII編碼的值,換句話說:不允許中文存儲(chǔ)。

為了解決這個(gè)問題,在設(shè)置cookie值的時(shí)候必須先編碼,然后取值的時(shí)候再解碼。

后端設(shè)置cookie用的asp.net,前端獲取用的Javascript,他們的編碼和解碼能一致么?當(dāng)前只能試一試了:

試了幾種方法,發(fā)現(xiàn)用HttpUtility.UrlEncode()進(jìn)行編碼成功:

cookie = new HttpCookie("rdname");  
cookie.Value = HttpUtility.UrlEncode(user.RegisterDeptName);  
cookie.Expires = System.DateTime.Now.AddDays(30);  
context.Response.Cookies.Set(cookie);  

客戶端Javascript解碼為:

var deptName = cookie('rdname');  
deptName= decodeURIComponent(deptName);  
$("#pickerlb").val(deptName);  

也就是說:Javascript中的decodeURIComponent()和C#的HttpUtility.UrlEncode()是配對(duì)的。

以上這篇safari cookie設(shè)置中文失敗的解決方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

监利县| 武冈市| 康保县| 利辛县| 贞丰县| 临澧县| 噶尔县| 泾川县| 武乡县| 上栗县| 如皋市| 辽阳市| 东莞市| 桦南县| 河曲县| 洪湖市| 临夏县| 周口市| 会理县| 康平县| 班戈县| 辉县市| 布尔津县| 高阳县| 淮安市| 六安市| 昂仁县| 漳州市| 都匀市| 台东市| 郎溪县| 新田县| 乡城县| 黔西县| 班玛县| 杭锦后旗| 缙云县| 雷州市| 定安县| 长白| 新田县|