国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > iOS > 正文

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

2020-07-26 03:17:21
字體:
供稿:網(wǎng)友

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

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

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

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

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

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()是配對的。

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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 惠东县| 天峻县| 定结县| 利辛县| 白河县| 天门市| 搜索| 沁阳市| 阳高县| 华亭县| 阜南县| 齐河县| 沅江市| 易门县| 酉阳| 湾仔区| 灌阳县| 石渠县| 英德市| 林州市| 凯里市| 长兴县| 张家川| 彭泽县| 凤翔县| 惠东县| 那坡县| 辰溪县| 双流县| 房产| 常德市| 鹤山市| 博兴县| 汝州市| 宁阳县| 舒城县| 莱州市| 噶尔县| 康保县| 岢岚县| 鹿邑县|