我的 cookie 值包含圆括号“例如:demo (1)” 当我尝试使用 encodeURI 进行编码时,圆括号 ( 未编码为 %28 ,对圆括号等特殊字符进行编码的替代方法是什么
最佳答案
要将 uri 组件编码为符合 RFC 3986 标准 - 编码字符 !'()*
- 您可以使用:
function fixedEncodeURIComponent(str) {
return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
return '%' + c.charCodeAt(0).toString(16);
});
}
取自示例部分之前:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent
关于Javascript,encodeURI 无法编码圆括号 "(",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44429173/