javascript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent()。这几种编码所起的作用各不相同。
escape() 方法:
采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。
不会被此方法编码的字符: @ * / +
encodeURI() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。
不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + '
encodeURIComponent() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如 / 等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则 / 字符被编码之后URL将显示错误。
不会被此方法编码的字符:! * ( ) '
因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者encodeURIComponent。
另外,encodeURI/encodeURIComponent是在javascript1.5之后引进的,escape则在javascript1.0版本就有。
分享到:
相关推荐
JavaScript中的编码和转义函数主要有encodeURI、encodeURIComponent和escape这三个函数,它们用于处理URL和URI中的特殊字符。下面将详细介绍这三个函数的功能和使用场景。 首先,encodeURI函数的主要用途是编码整个...
JavaScript中的`encode`和`decode`是一组用于字符串编码解码的方法,它们在处理和传输数据时起到关键作用。在JavaScript中,常见的编码方法有`encodeURIComponent`、`decodeURIComponent`、`encodeURI`、`decodeURI`...
JavaScript中的`encode64`加密算法是一种用于对数据进行编码的方法,它将二进制数据转化为可以在URL、电子邮件等环境中安全传输的文本格式。在JavaScript中实现`encode64`通常涉及将字节序列转换为Base64字符,Base...
在JavaScript编程中,HTML编码(htmlencode)和解码(htmldecode)是非常常见的需求,主要用于在HTML中安全地处理和显示特殊字符。本文将深入探讨一种另类的JavaScript方法来实现这两个功能,避免传统正则表达式替换...
用JavaScript实现PHP里的Base64编码与解码。 使用方法: encode64('要编码的字符串'); decode64('要解码的字符串');
4. **JavaScriptEncode**:对JavaScript字符串进行编码,确保它们在执行时不包含恶意代码。 5. **Base64Encode**:对Base64编码的数据进行转义,防止在Base64解码时注入恶意代码。 此外,AntiXssLibrary还提供了...
XSS payload 可以使用各种技术来规避检测,例如使用 Unicode 编码、Base64 编码、JavaScript encode 等。 自动化工具测试 Burpsuite 是一种常见的自动化工具,可以用于 XSS payload 的自动化探测。使用 Burpsuite...
针对XSS攻击的防御措施,主要包括对用户输入的数据进行严格的过滤和编码,如JavaScriptEncode,确保数据被插入到HTML页面时不会被当作脚本执行。 CSRF攻击同样是一种常见的Web安全问题,它利用用户的合法身份,诱导...
在标题提到的“JavaScript的URL encode decode源代码,ip验证,TRim”中,我们将探讨这三个关键概念。 1. URL编码与解码: 在JavaScript中,我们经常需要对URL中的特殊字符进行编码,以确保它们在HTTP请求中被正确...
JS.Encode是在JS代码进行编码之后形成的“乱码”,此乱码除无法阅读之外,仍能够良好的执行。 往往在网页上有JS加密代码的解码方法,但是由于代码中存在转义字符,无法正确的进行解码。 JAVAScript使用以下八种转义...
**XSS Encode 知识详解** XSS(Cross-site scripting)攻击是指攻击者通过在网页中插入恶意脚本,使得用户在浏览该页面时,浏览器执行了这些脚本,从而达到攻击目的的一种常见网络攻击方式。XSS Encode是针对这种...
用js实现的base64encode,base64decode函数. 包括: function base64encode(str) { function base64decode(str) { function utf16to8(str) { function utf8to16(str) { function doit() {
`MD5Encode.js`文件很可能是实现MD5编码和签名功能的JavaScript代码库,其中可能包含了MD5哈希计算、编码转换以及可能的加密签名过程。在使用这样的库时,开发者需要按照文档或示例代码来调用相应的函数,传入正确的...
`Android-js-htmlencode`正是这样一个工具,它提供了一个JavaScript类,使得在Android应用中进行HTML编码和解码变得简单易行。 首先,我们要理解HTML编码的重要性。HTML编码主要是为了避免浏览器将某些字符解释为...
标题中的"xssEncode swf"指的是一个与XSS(跨站脚本攻击)相关的SWF(Shockwave Flash)文件。XSS是一种常见的网络安全问题,它允许攻击者在用户的浏览器中注入恶意代码,从而窃取敏感信息、执行非法操作或者传播...
function HtmlEncode(text) { return text.replace(/&/g, '&').replace(/\"/g, '"').replace(/, '<').replace(/>/g, '>') } ``` 6. 原生 JavaScript 还原 HTML 标签 在 JavaScript 中,还原 HTML ...
然而,当我们处理包含中文汉字的数据时,`json_encode`默认会转义这些非ASCII字符,导致输出的JSON字符串中中文汉字显示为乱码或者\u编码形式。本资料主要探讨如何在使用`json_encode`时避免中文汉字被转义,从而...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其易于人阅读和编写,同时也易于机器解析和生成,而被广泛应用于Web服务和API的数据交互。 `json_encode()` 函数是将PHP变量转换为JSON格式的...
在编程语言中,例如JavaScript、Python或Java,有一些字符具有特殊含义,如`"`, `\`, `\n`, `\r`等。为了避免这些字符被解释为特殊含义,我们需要在它们前面加上反斜杠`\`,这就是转义。在Java中,`java.net....