浏览器URL中 encodeURIComponent()加密和decodeURIComponent()解码

encodeURIComponent()加密

定义和用法

encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。

语法

encodeURIComponent(URIstring)
参数 描述
URIstring 必需。一个字符串,含有 URI 组件或其他要编码的文本。

返回值

URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。

说明

该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ‘ ( ) 。

其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。

使用方法:

document.write(encodeURIComponent("http://www.w3school.com.cn")+ "<br />")
document.write(encodeURIComponent("http://www.w3school.com.cn/My first/")+ "<br />")
document.write(encodeURIComponent(",/?:@&=+$#"))

输出结果:

http%3A%2F%2Fwww.w3school.com.cn
http%3A%2F%2Fwww.w3school.com.cn%2FMy%20first%2F
%2C%2F%3F%3A%40%26%3D%2B%24%23

---------------------------------------

decodeURIComponent()解码

定义和用法

decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码。

语法

decodeURIComponent(URIstring)
参数 描述
URIstring 必需。一个字符串,含有编码 URI 组件或其他要解码的文本。

返回值

URIstring 的副本,其中的十六进制转义序列将被它们表示的字符替换。

var test1="http://www.w3school.com.cn/My first/"
document.write(encodeURIComponent(test1)+ "<br />")
document.write(decodeURIComponent(test1))

输出结果:

http%3A%2F%2Fwww.w3school.com.cn%2FMy%20first%2F
http://www.w3school.com.cn/My first/

原文地址:https://www.cnblogs.com/taohuaya/p/10628071.html

时间: 2024-08-29 11:37:41

浏览器URL中 encodeURIComponent()加密和decodeURIComponent()解码的相关文章

如何用js获取浏览器URL中查询字符串的参数

首先要知道Location这个对象以及这个对象中的一些属性: href:设置或返回完整的url.如本博客首页返回http://www.cnblogs.com/wymninja/ host:设置或返回主机名和当前的URL的端口号.本博客首页返回www.cnblogs.com hostname:设置或返回当前URL的主机名.本博客首页返回www.cnblogs.com hash:设置或返回从井号(#)开始的URL(锚).本博客首页返回 空 pathname:设置或返回当前URL的路径部分.本博客首页

iOS URL中汉字的编码和解码

发现NSString类中有内置的方法可以实现.他们分别是: - (NSString *)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)encoding- (NSString *)stringByReplacingPercentEscapesUsingEncoding:(NSStringEncoding)encoding 只要传入相应的编码即可以进行编码和解码了,不过此方法是对整个Url进行编码的所以如果有Query Str

三个获取浏览器URL中参数值的方法

这三个是一般的获取浏览器传的参数值的方法,之前有用unescape()解码的方法,但是遇到汉字会产生乱码,所以用decodeURI(); 方法一: function getQueryString(name) { //获取url方法 编辑传来的参数 //之前decodeURI是用的unescape() 有时候会取汉字乱码 var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r

JS中encodeURIComponent函数用php解码的代码

JS中encodeURIComponent函数给中文编码后,如何用php解码?? 前提:编码前的中文可能是gbk,gb2312,utf-8等. 复制代码 代码如下: urldecode() iconv() 在JS中使用了encodeURIComponent对中文进行编码在PHP中使用iconv('UTF-8','gb2312',$q);就可以得到你需要的字串了,其中gb2312根据你实际应用来定如还不明白为什么看下面的文章 URL编码转换,escape() encodeURI() encodeU

js处理url中的请求参数(编码/解码)

在处理 a 链接跳转其他页面时,总会遇到需要传递一些当前页面的信息到其他页面,然后其他页面利用这些信息进行相关操作.利用 get 请求或 hash 传递是常见的方式. 首先,需要对传递的参数进行编码,保证数据的安全性:之后,将参数拼接到要跳转的url后,并设置为 a 链接中的 href 属性值. var util = { setUrlParam: function (params, targetUrl) { var url = ''; if(params && targetUrl){ //

IE浏览器URL中的查询条件中包含中文时报404的解决办法

情况是比如我输入如下URL到IE浏览器: http://localhost:8090/RPT_TYSH_JL_ZD_DETAIL.html?pageIndex=1&year=2018&month=7&merAddress=鹿港 会出现404错误. 解决办法是:修改IE浏览器中的配置: 点击IE浏览器右上方的设置按钮 --> Internet选项 --> 高级 --> "国际*"中勾选上"发送 Intranet URL的UTF-8字符串

火狐浏览器URL中传中文参数乱码问题

火狐浏览器:前端页面传中文 <span data-bind=" check_action:'roleMenuPriv'"> <a data-bind="attr:{href:'#pages/systems/roles/authorization?uuid=' + $row.uuid+'&name='+encodeURI(encodeURI("此处为要传的中文字符"))},disable:false">权限</

ASP.NET - URL中参数加密解密操作

效果: 代码: using System; using System.Text; using System.IO; using System.Security.Cryptography; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Response.Write("<a href = " + "http

关于浏览器URL中出现会话验证字符说明

服务器安装了网站安全狗,访问网站的时候会显示一串类似iissafedogccsision=7Z86v5H5z这样的会话验证信息. 安全狗官方解释 出现该字符的主要原因是用户开启了网站安全狗的CC防护的会话验证模式的中级模式或高级模式,所以浏览器会跟上这段代码进行网站访问的验证,是属于正常情况.浏览器首次访问验证通过后,后续访问不会出现该字符. 如果用户确实不想出现这段验证代码可以将网站安全狗的CC攻击防护功能的会话验证模式调整为初级模式(该模式对攻击验证判断较为宽松)即可解决.