`
wangshare
  • 浏览: 21326 次
  • 性别: Icon_minigender_1
  • 来自: 佛在我心
社区版块
存档分类
最新评论

实例说明url转义需求

阅读更多
在需要重定向的url中如果有参数,那么可能会出现问题
比如:
abc.action?reurl=cde.action?p1=a&p2=2&p3=3
我在下一个action接受reurl参数值时,得到的是cde.action?p1=a,后面的都没了,这个是因为url需要转义
abc.action?reurl=cde.action%3Fp1=a%26p2=2%26p3=3

下面转载文章:

url转义字符原理

如果表单的action为list.jsf?act=go&state=5

则提交时通过request.getParameter可以分别取得act和state的值。

如果你的本意是act='go&state=5'这个字符串,那么为了在服务端拿到act的准确值,你必须对&进行转义

[预备知识]

        对与通过get方式提交的url,浏览器在提交前首先根据http协议把一一个的参数及其值解析配对。而url的参数间是通过&分割的,这就是浏览器进行参数配置的分割依据。如果你的参数值中含有&等url特殊字符,那么你在服务器端就会拿到意想不到的值。所以必须对url的特殊字符进行转义。
编码的格式为:%加字符的ASCII码,即一个百分号%,后面跟对应字符的ASCII(16进制)码值。例如 空格的编码值是"%20"。
下表中列出了一些URL特殊符号及编码
 

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

所以上述的action你应该写成list.jsf?act=go%26state=5

引用 :http://alipay.iteye.com/blog/68412
分享到:
评论

相关推荐

    PHP实例开发源码—URL编码转换工具.zip

    例如,可能需要确保输入的字符串已经转义或者未转义,根据实际需求选择合适的编码或解码函数。同时,使用自定义的编码转换工具可能需要考虑编码一致性,避免在不同部分重复编码或解码导致的问题。 总的来说,这个...

    xheditor jsp完整实例

    XHEditor允许开发者根据需求定制自己的功能插件,通过编写JavaScript代码实现特定功能,并集成到编辑器中。 10. **用户体验优化**: 为了提供更好的用户体验,可以调整XHEditor的配置,例如设置编辑器的宽度、...

    delphi开发webservices 接口实例

    我们需要设置其URL属性指向服务端的WSDL地址,然后就可以像调用本地方法一样调用远程WebMethods。Delphi会自动处理SOAP消息的封装和解封装,使得与WebServices的交互变得简单易行。 除了基本的SOAP通信,Delphi还...

    ASP论坛网站实例开发源码——PhpSay家族贴吧知道实例开发.rar

    5. 安全防护:论坛系统需要防止SQL注入、XSS攻击等网络安全问题,因此,编写安全的代码,正确过滤和转义用户输入,是开发者必须关注的点。 6. SEO优化:为了提高论坛的搜索引擎可见性,开发者还需要了解基本的SEO...

    php自定义urlencode,urldecode函数实例

    这个函数会将字符串中的特定字符进行转义,而不是直接进行标准的URL编码。 在提供的示例代码中,自定义的ajax_encode函数首先定义了一个模式数组$patern,包含了需要被替换的字符序列,然后定义了一个替换数组$rp,...

    Java正则表达式的使用实例

    本实例将深入探讨如何在Java中使用正则表达式进行URL、电话号码等字符串的验证。 1. **基础概念** - **Pattern**: 代表一个正则表达式模式的类,可以编译成`Pattern`对象以便多次匹配。 - **Matcher**: 匹配器...

    PHP文本编辑器实例

    在IT领域,文本编辑器是开发人员不可或缺的工具,它用于编写、查看和修改源代码。...在实际项目中,你可能需要根据具体需求进一步定制和扩展这个实例,比如添加用户验证、错误处理、日志记录等功能。

    PHP实例开发源码—网站导航系统源码.zip

    8. **URL重写**:为了使URL更易读和SEO友好,可以使用Apache的mod_rewrite模块或Nginx的URL重写规则,将动态URL转化为静态化的形式。 9. **模板引擎**:为了分离业务逻辑和视图展示,开发者可能会使用Smarty或其他...

    正则表达式在javascript中的几个实例.txt

    - `:\/\/`是URL中“://”的转义写法。 - `.+$`匹配任何字符直至字符串结尾。 - **`/^https?:\/\/(([a-zA-Z0-9_-])+(\.)?)*(:\d+)?(\/((\.)?(\?)?=?&?[a-zA-Z0-9_-](\?)?)*)*$/i`解析**: - 更加复杂的URL格式验证...

    动态网页设计实例,网站开发

    6. **安全性**:考虑到网站可能会遭受各种攻击,如SQL注入、XSS跨站脚本等,开发者需要了解并实施安全措施,如使用预编译语句防止SQL注入,对用户输入进行过滤和转义防止XSS。 7. **用户认证与授权**:“bbs”论坛...

    FCK editor 使用实例代码

    你需要在服务器端配置图片上传的处理逻辑,例如,使用Java Servlet接收并处理上传请求,保存图片到服务器,并返回图片的URL供编辑器插入到文档中。 8. **安全考虑** 使用FCKeditor时,需要注意XSS攻击的防范。确保...

    PHP实例开发源码—企业官网系统.zip

    7. **安全措施**:学习防止SQL注入、XSS攻击和其他常见Web安全问题的方法,例如使用预编译语句、过滤输入和转义输出。 8. **前端技术**:除了PHP,还可能涉及到HTML5、CSS3、JavaScript(可能包括jQuery、Vue.js等...

    PHP实例开发源码-风之相随 php 留言簿.zip

    表单元素如`<input>`、`<textarea>`用于输入数据,`<form>`标签定义了提交的URL和方法(通常是POST)。PHP通过`$_POST`全局数组获取表单数据,并进行验证和处理。 4. **文件上传** 虽然在“风之相随 PHP 留言簿”...

    PHP实例开发源码-MACCMS资源采集插件 php版.zip

    6. **内容过滤与格式化**:根据需求,可能需要对采集到的内容进行清洗,去除广告、多余标签,或者进行HTML转义,确保在MACCMS中安全展示。 7. **性能优化**:考虑到大规模采集可能导致的服务器压力,可能会使用多...

    Android relaceALL替换字符串中的反斜杠

    - 编码或解码URL,URL中的反斜杠需要转义。 ### 5. 小结 理解并正确使用`replaceAll`函数,以及处理反斜杠在正则表达式中的转义,对于Android开发者来说至关重要。通过这个简单的`ReplacAllDemo`项目,你可以深入...

    PHP实例开发源码-机智php图片管理系统.zip

    4. **图片处理**:为了适应不同的显示需求,可能需要对图片进行缩略图生成、裁剪等操作。可以使用GD库或Imagick扩展来处理图像。 5. **Web服务器配置**:确保PHP环境正确配置,如设置合适的上传限制、启用必要的...

    PHP实例开发源码—MySites 网址导航系统.zip

    【PHP实例开发源码—MySites 网址导航系统】是一个基于PHP编程语言的开源项目,用于构建一个实用的网址导航系统。这个系统能够帮助用户整理和分类各种网站链接,方便用户快速访问常用或者感兴趣的网站。通过学习和...

    PHP实例开发源码—Phpwind点卡充值即时到账积分插件.zip

    4. **安全性**:防止SQL注入、XSS攻击等,需要使用预处理语句、转义特殊字符等手段保障用户数据安全。 5. **支付接口**:理解点卡充值的流程,包括如何与第三方支付平台(如支付宝、微信支付)进行API对接,处理...

Global site tag (gtag.js) - Google Analytics