maj*_*aja 5 javascript cookies special-characters
我需要使用 javascript 设置 cookie,我使用以下命令执行此操作:
document.cookie = name+"="+value;
Run Code Online (Sandbox Code Playgroud)
我的问题是这value是一个字符串,它可以包含任何 unicode 字符。
是否有一个函数可以自动替换特殊字符(例如;) - 如果没有,哪些字符是被禁止的?
像“encodeURIComponent()”这样的用于获取参数的函数将是完美的
你应该使用window.escape.
escape() 方法将特殊字符(任何非常规文本或数字的字符)转换为十六进制字符,这对于设置 cookie 的值尤其必要。在 GET 请求或 AJAX GET/POST 请求的 URL 中传递名称=值对时也很有用。
它也有window.unescape对应的。
更新。在转义之前使用base64编码/解码
可能是有意义的,以免因window.encode.