`
ysj_csdn
  • 浏览: 6363 次
社区版块
存档分类
最新评论

url特殊字符处理

阅读更多

URL 前端向服务器传参数时,url中的一些字符变成了特殊字符

原因:在url传递参数的时候,一般都会序列化一下,以保证参数的安全。

下表中列出了一些URL特殊符号及编码

      十六进制值
1. + URL 中+号表示空格 %2B
2. 空格 URL中的空格可以用+号或者编码 %20
3. / 分隔目录和子目录 %2F
4. ? 分隔实际的 URL 和参数 %3F
5. % 指定特殊字符 %25
6. # 表示书签 %23
7. & URL 中指定的参数间的分隔符 %26
8. = URL 中指定参数的值 %3D
9. “” 双引号 %22
10. 叹号 %3E

还有一些需要自己去查下,我遇到了边更新上来。

解决方法如下:

方法一、修改客户端,将客户端带“+”的参数中的“+”全部替换为‍“2B%”,这样参数传到服务器端时就能得到“+”了。

方法二、修改服务器端,将空格替换为“+”,这种方式只适用于参数中有‍“+”没有空格的情况。

例子:

String a = reuqest.‍getParameter("clientStr")‍.replace(' ','+');

如果客户端为clientStr=test+OK,那么a的值为test+OK;

方法三、修改服务器端,将获取参数的方法由‍reuqest.‍getParameter改为‍request.getQueryString().substring(0),然后对得到的字符串进行解析。

例子:

‍‍String a =request.getQueryString().substring(0);

‍如果客户端为clientStr=test+OK,那么a的值为‍clientStr=test+OK,需要再解析一下,

a=a.‍substring(10);得到a的值为‍test+OK。

附:一个JS,用来转义URL中特殊字符的。

‍function URLencode(sStr)
{
    return escape(sStr).replace(/\+/g, '+').replace(/\"/g,'"').replace(/\'/g, ''').replace(/\//g,'/');
}

 

还一种方案

strURL = "search.do?param=" + encodeURIComponent(str);


普通的传参出现乱码问题,可使用encodeURI来转译,它会转译成UTF-8的格式;
strURL = "search.do?param=" + encodeURI(str);

 

分享到:
评论

相关推荐

    url特殊字符处理方法

    URL特殊字符处理方法 在URL中处理特殊字符是一个非常重要的知识点,特别是在Web开发中。URL(Uniform Resource Locator)是互联网上使用的资源标识符,用于标识互联网上的资源。但是,在URL中有些符号是不能直接...

    url参数中传递特殊字符处理方法

    URL参数中传递特殊字符处理方法 在进行 URL 参数传递时,需要处理特殊字符的编码问题。因为有些符号在 URL 中是不能直接传递的,需要使用他们的编码。以下是常见的 URL 特殊符号及编码: 1. + 号表示空格,编码为 ...

    javaScript处理URL中特殊符号的处理

    值得一提的是,除了编码之外,解码也是处理URL中特殊字符时不可或缺的另一部分。解码是编码的逆过程,即将百分号编码的字符串转换回原始字符串。在JavaScript中,可以使用`decodeURIComponent`和`decodeURI`函数进行...

    php获取URL中带#号等特殊符号参数的解决方法

    然而,URL参数中可能包含特殊字符,如井号(#)和其它符号,它们在URL中扮演特定的角色,可能导致无法直接获取预期的参数值。本篇知识点将详细探讨如何在PHP中获取带有特殊符号,如井号(#)的URL参数,并介绍如何使用...

    CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患分析

    本文实例分析了CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患。分享给大家供大家参考,具体如下: php CI框架中URL特殊字符有很多是不支持的,导致像c++,括号这些常用的分类,字符都无法正常显示很头痛,而...

    swift-url分类解决URL里面的空格中文及其他特殊字符问题

    现在,让我们创建一个名为`URL+Encoding.swift`的文件,用来扩展URL类并添加处理特殊字符的方法: ```swift import Foundation extension URL { func encoded() -> String? { var string = self.absoluteString ...

    url特殊字符

    标题“URL特殊字符”涉及到的是在互联网中使用URL(统一资源定位符)时遇到的一些特殊字符问题。URL是用于在互联网上唯一标识资源的字符串,它由若干个部分组成,包括协议、主机名、路径、查询参数等。在URL中,某些...

    简单实例处理url特殊符号&处理(2种方法)

    在处理URL时,我们经常会...总结来说,处理URL特殊符号,尤其是`&`,可以通过前端JavaScript转码或者后端编程进行。同时,要关注字符编码的一致性,尤其是在多语言或跨编码环境的网络分享中,以保证数据传输的准确性。

    url参数中有+、空格、=、%、、#等特殊符号的问题解决

    ,%,#,&,=等特殊符号的时候,可能在服务器端无法获得正确的参数值,如何是好?解决办法将这些字符转化成服务器可以识别的字符,对应关系如下:URL字符转义 用其它字符替代吧,或用全角的。 + URL 中+号表示空格...

    解决Python 爬虫URL中存在中文或特殊符号无法请求的问题

    #解决请求路径中含义中文或特殊字符 url_ = quote(new_url, safe=string.printable); 以上这篇解决Python 爬虫URL中存在中文或特殊符号无法请求的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也...

    URL中编码URL特殊字符.docx

    URL(Uniform Resource Locator)是互联网上的资源定位器,遵循特定的规范,如RFC 1738,它限制了URL中可以使用的字符集,通常只允许字母、数字、某些标点符号以及一些特殊字符。然而,当URL需要传递特殊字符,尤其...

    iOS特殊字符处理

    在处理特殊字符时,可以使用`stringByAddingPercentEncodingWithAllowedCharacters:`方法进行URL编码,防止特殊字符在URL中引起解析问题。例如,空格会被转换为"%20"。相反,如果需要解码,可以使用`...

    URL转码及不能被转码的特殊字符

    ### URL转码及不能被转码的特殊字符 在互联网技术中,URL(Uniform Resource Locator,统一资源定位符)作为网页地址的重要组成部分,在传输过程中必须遵循一定的格式规范。URL转码(也称为百分号编码或Percent-...

    关于附件上传文件名包含特殊字符的问题解决办法

    **实现思路**:对于包含特殊字符的文件名,在上传和下载的过程中进行编码和解码处理,确保文件名能够正确地被服务器识别并下载。 **步骤详解**: 1. **上传时转码**: - 当用户上传文件时,首先读取文件名。 - ...

    特殊符号测试用例文档

    9. **安全性和隐私**:确保特殊符号不会泄露用户的敏感信息,比如通过URL或查询参数传递的特殊字符。 10. **性能测试**:评估处理大量特殊符号数据时,系统的性能表现和响应时间。 在描述中提到的“提高自身进入...

    简单实例处理url特殊符号处理(2种方法)

    我遇到的问题是:url里的参数内容包含&符合,我有两种方法解决 其一方法是:在页面用JS转码,例子如下(前端处理) 代码如下: ${group.cn })</a> [removed] function test(a,b){ alert(“test”); location....

    所有Url转移字符表

    为了在网络传输过程中确保URL的正确解析和编码,URL中的某些特殊字符需要进行转义,这就是所谓的URL转义字符。这些转义字符通常采用百分号(%)加上两位十六进制数来表示。以下是关于URL转义字符的详细解释: 1. **...

    php javascript html mysql 特殊字符处理.txt

    本文将详细介绍这些技术栈中特殊字符的处理方法。 #### 一、PHP中的特殊字符处理 PHP作为服务器端脚本语言,在处理用户输入的数据时,需要特别注意对特殊字符的转义,以防止SQL注入等安全问题。 1. **`addslashes...

    jsp传参特殊字符

    ### JSP URL传参特殊字符处理 在JSP(JavaServer Pages)开发中,通过URL进行参数传递是一种常见的做法。然而,在实际应用中经常会遇到一些特殊字符如“#”、“&”等,这些字符如果不经过适当的编码处理,在传递...

Global site tag (gtag.js) - Google Analytics