Web編碼與交換資訊
在ASP.NET Web和瀏覽器之間編碼並交換資訊。To encode to exchange between browser and ASP.NET web.使用 .NetFramework (C#) 之 System.Uri.EscapeDataString() 與 JavaScript 之 encodeURIComponent() 函式。REC3986規格。
原理
範例
// cshtml 後端編碼並存入cookie
var info = new { foo='什麼都可以什麼都不奇怪。', bar=12345.6789 };
string json = Newtonsoft.Json.JsonConvert.SerializeObject(info, Newtonsoft.Json.Formatting.None);
string encoded = System.Uri.EscapeDataString(json); //『RFC 3986』編碼
var infoCookie = new HttpCookie("cookiename", encoded);
infoCookie.HttpOnly = false; // 非HttpOnly才能在Browser端取得值。
infoCookie.Expires = DateTime.Now.AddSeconds(29);
Response.Cookies.Add(infoCookie); // html.js 前端取cookie並解碼
const encoded = $.cookie("cookiename")
$.removeCookie("info"); // 取值後馬上清除。
const json = window.decodeURIComponent(encoded); // 『RFC 3986』解碼
const info = JSON.parse(json);範例二
utf8_to_b64
Last updated