你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> safari cookie設置中文掉敗的處理辦法

safari cookie設置中文掉敗的處理辦法

編輯:IOS開發綜合

比來用H5停止手機端開辟,因為是Window操作體系,為了便利開辟和調試,直接在chrome閱讀器長進行測試,然後在Android機長進行手機端測試,當功效根本落成後,本來在Android上運轉正常的運用,在IOS上運轉時,湧現許多奇異的成績,依據排查,發明是因為cookie未取到值而招致相干信息沒法獲得。

一開端認為是cookie中文亂碼的成績,後來跟蹤發明,cookie的值壓根就沒賦值勝利,網上查了材料,發明safari不許可非ASCII編碼的值,換句話說:不許可中文存儲。

為懂得決這個成績,在設置cookie值的時刻必需先編碼,然後取值的時刻再解碼。

後端設置cookie用的asp.net,前端獲得用的JavaScript,他們的編碼息爭碼能分歧麼?以後只能試一試了:

試了幾種辦法,發明用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設置中文掉敗的處理辦法就是小編分享給年夜家的全體內容了,願望能給年夜家一個參考,也願望年夜家多多支撐本站。

【safari cookie設置中文掉敗的處理辦法】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved