导航:首页 > 编程语言 > javaurl中参数带特殊字符

javaurl中参数带特殊字符

发布时间:2022-09-28 09:42:05

1. java发送特殊字符到URL

用转译试试 text=12\&sd
如果还不行,那就对12&sd字符进行编码,转换成ASCII接收了后转回来

2. JAVA如何处理URL中的特殊字符

这个过程叫转义复。制
val = "@123+abc%A&B";
val = encodeURIComponent(val);
...
java:
String s = new String(request.getParameter("val").getBytes("ISO8859-1"), "UTF-8");
数据库保存时,只要转义单引号,&,| ,?,可能还有遇到再补充吧

3. 如何在Java URI类中使用特殊字符

//该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
//其他字符(比如 :;/?:@&=+$,#
var tDT_Start =$("#DT_Start").val().replace(/:/g,'|'); //将:替代为|,传到后台再转换回来
var tDT_End =$("#DT_End").val().replace(/:/g,'|');
解析:字符串要匹配正则/:/g,将符合条件的替换为|

4. java 接收url中参数带 % %传过来的值

有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那内么就要使用容他们的编码了。编码的格式为:%加字符的ASCII码,即一个百分号%,后面跟对应字符的ASCII(16进制)码值。例如 空格的编码值是"%20"。
如果不使用转义字符,这些编码就会当URL中定义的特殊字符处理。

下表中列出了一些URL特殊符号及编码 十六进制值
1.+ URL 中+号表示空格 %2B

2.空格 URL中的空格可以用+号或者编码 %20

3./ 分隔目录和子目录 %2F

4.? 分隔实际的 URL 和参数 %3F

5.% 指定特殊字符 %25

6.# 表示书签 %23

7.& URL 中指定的参数间的分隔符 %26

8.= URL 中指定参数的值 %3D

希望对您有所帮助,您的采纳就是我的动力,谢谢!

5. URL中有特殊字符怎么处理

我们知道发送一个http请求时,如果使用的是GET方法,请求的参数会包含在url中并通过&进行分割,如:http://www.example.com/index?name=name1&id=id2。服务端根据url中的参数获取对应的值。Java编写的后台代码,可通过HttpServletRequest的方法getParameter("name")获取name的值:name=name1.
事实上HttpServletRequest获取参数是对字符串"?name=name1&id=id2"进行拆分,根据"&"分割出参数名称,根据"="分割出参数值。那么问题来了,如果我们的name里面本身就包含有&或者=,如name="na&me=1",如果发送http请求前不做相应的处理,url就变成了http://www.example.com/index?name=na&me=1&id=id2,这个时候后台解析出来的参数就变成了:name=na;me=1;id=id2,这显然不是我们想要的结果。
面对这个情况的解决方法是对url中存在歧义的字符串进行URL编码。URL编码就是使用一种安全的字符去表示不安全的或存在歧义的字符,”na&me=1"经过URL编码后的值为:na%26me%3d1,这个时候我们发送http请求的url改为:http://www.example.com/index?name=na%26me%3d1&id=id2,服务端进行解码后解析参数便可获得正确的值:name="na&me=1"。

6. 前端返回给ios的url 地址的特殊符号怎么处理

url里的参数内容包含&符合,我有两种方法解决<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; text-indent: 27px; " /> 其一方法是:在页面用js转码,例子如下(前端处理)<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; text-indent: 27px; " /> <<a href="#" onclick="test('${group }')">${group }</a><br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; text-indent: 27px; " /> 2>>>>>>>>>>>>>>>>>>>>java bean: group<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; text-indent: 27px; " /> String cn;//要显示的CN<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; text-indent: 27px; " /> String encodedCN;//当参数传的CN<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; text-indent: 27px; " /> public Group(String cn) { this(); this = name; setEncodedCN(LdapUtil/?logout&aid=7&u='+encodeURIComponent ("cang/bruce42")+'">退出 </a>');</script><br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> 2、 进行 url跳转时可以整体使用 encodeURI。 例如:Location/do/s?word=网络 &ct=21");<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> 3、 js 使用数据时可以使用escape 。 例如:搜藏中history 纪录。<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> 4、 escape对 0-255 以外的unicode 值进行编码时输出 %u**** 格式,其它情况下escape , encodeURI , encodeURIComponent编码结果相同。<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> <br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> 最多使用的应为encodeURIComponent ,它是将中文、韩文等特殊字符转换成utf-8 格式的 url 编码,所以如果给后台传递参数需要使用encodeURIComponent 时需要后台解码对 utf-8 支持(form 中的编码方式和当前页面编码方式相同)<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> escape不编码字符有 69 个: *, + , - , . , / , @ , _ , 0-9 , a-z ,A-Z<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> encodeURI不编码字符有 82 个: !, # , $ , & , ' , ( , ) , * , + , , , - , . , / , : , ; , = , ? , @ , _ , ~ , 0-9, a-z , A-Z<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> encodeURIComponent不编码字符有 71 个: !, ' , ( , ) , * , - , . , _ , ~ , 0-9 , a-z ,A-Z<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> 以下是url中可能用到的特殊字符及在url中的经过编码后的值:(略)<br style="word-wrap: break-word; word-break: break-all; font-family: Arial, Helvetica, 宋体; font-size: 14px; line-height: 23px; " /> 项目中发现,直接对url中的参数部分做encodeURI() 编码转换,后台servlet通过getParamater()获取时,不需要转换可以直接获取到正确的值。 说明:参数没有用到中文,框架用的是struts框架

7. java中有没有方法类似于js中的encodeURIComponent函数,对字符串中的特殊字符进行转义的

//该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
//其他字符(比如 :;/?:@&=+$,#
var tDT_Start =$("#DT_Start").val().replace(/:/g,'|'); //将:替代为|,传到后台再转换回来
var tDT_End =$("#DT_End").val().replace(/:/g,'|');
解析:字符串要匹配正则/:/g,将符合条件的替换为|

C#后台tDT_Start= tDT_Start.Replace("|", ":");

javaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 。
下面简单介绍一下它们的区别
1 escape()函数
定义和用法
escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。
语法
escape(string)
参数 描述
string 必需。要被转义或编码的字符串。
返回值
已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。
说明
该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。其他所有的字符都会被转义序列替换。

MVC3
页面js:

var url = URL +"?startDT="+ escape($("#StartDT").val();//时间

在action中,
{
string dt = Server.UrlDecode(startDT);
}

2 encodeURI()函数
定义和用法
encodeURI() 函数可把字符串作为 URI 进行编码。
语法
encodeURI(URIstring)
参数 描述
URIstring 必需。一个字符串,含有 URI 或其他要编码的文本。
返回值
URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。
说明
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#

3 encodeURIComponent() 函数
定义和用法
encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。
语法
encodeURIComponent(URIstring)
参数 描述
URIstring 必需。一个字符串,含有 URI 组件或其他要编码的文本。
返回值
URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。
说明
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
提示和注释
提示:请注意 encodeURIComponent() 函数 与 encodeURI() 函数的区别之处,前者假定它的参数是 URI 的一部分(比如协议、主机名、路径或查询字符串)。因此 encodeURIComponent() 函数将转义用于分隔 URI 各个部分的标点符号。

4 总结:
通过对三个函数的分析,我们可以知道:escape()除了 ASCII 字母、数字和特定的符号外,对传进来的字符串全部进行转义编码,因此如果想对URL编码,最好不要使用此方法。而encodeURI() 用于编码整个URI,因为URI中的合法字符都不会被编码转换。encodeURIComponent方法在编码单个URIComponent(指请求参 数)应当是最常用的,它可以讲参数中的中文、特殊字符进行转义,而不会影响整个URL。

8. java怎么处理url里面的特殊字符

这个过程叫转义。
val = "@123+abc%A&B";
val = encodeURIComponent(val);
...
java:
String s = new String(request.getParameter("val").getBytes("ISO8859-1"), "UTF-8");
在数据库保存时,只要转义单引号,&,| ,?,专可能还有遇到再补充吧属

9. java 从一个URL中提取特定子字符串保存

可以通过java的”substring“方法截取出对应的字符串,前提是内知道开始和结束的字符串的值:
String getSignInfo = reqResult.substring(reqResult.indexOf("(") + 1, reqResult.indexOf(")"));
解释容:上述方法就是截取reqResult字符串的中开始”(“和结束”)“中间部分的内容,”1“就是”)“的长度,之后将获取的结果赋值给”getSignInfo进行输出即可“;
备注:以上方法通用于截取字符串,数字”6“和开始结束字符串根据实际需要修改即可。

10. url的非法字符有哪些

例子:

1、比如在操作系统文件(夹)命名里,它有自己的一套规则: / * ? : | 等字符不能出现在名称里面。 因此在此规则里面 字符 / * ? : "<> | 都属于非法字符。

2、比如在编程语言 例如C# 变量不能出现以数字开头的名称,像 0tmp 这个变量名称就属于非法的。

3、比如在java语言中,对于变量名称只能是数字,字母,下划线,$这几种组合,其中不能以数字开头。

非法字符并不是指某个字符是非法的,而是某个字符不能出现在某个定义的规则里面。

(10)javaurl中参数带特殊字符扩展阅读:

URL的参数中一定要避免的非法字符:

在URL中的参数中不能有空格、双字节字符(如汉字),否则会破坏URL中参数含义的准确性,成为非法的URL,访问该URL后会报:Server returned HTTP response code: 505 for URL错误!

解决方法(以参数中含有空格为例):
空格的unicode为%20,将参数中的所有空格都替换为%20即可。

参考资料:网络-非法字符

阅读全文

与javaurl中参数带特殊字符相关的资料

热点内容
妖神记之叶紫芸被褥 浏览:781
word空格键biaoji 浏览:788
芭比之公主所有电影 浏览:242
网站放国外服务器一个月多少钱 浏览:427
一女多男的cp古言 浏览:73
hs光流法matlab代码 浏览:239
勾魂恶梦戴波波是谁 浏览:991
啄木鸟电影系列 浏览:44
word2007表格双线变单线 浏览:304
想读编程上什么大学 浏览:507
钉钉图片上传文件夹 浏览:186
求个能看那种的网址 浏览:768
国产影片中文字 浏览:110
主角叫叶尘的系统流小说 浏览:468
谁和她睡了没看懂 浏览:344
女胖胖演过电影 浏览:144
网络通信开发 浏览:185
什么网站看首饰好 浏览:758
ug10图框在哪个文件夹里 浏览:925
一个叫美娜的韩国电影 浏览:231

友情链接