zoukankan      html  css  js  c++  java
  • url转义字符原理

    转自:

    http://alipay.javaeye.com/blog/68412

    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
  • 相关阅读:
    11.28 正则表达式
    12.28jQuery 的取值赋值
    11.27 上传下载 图片预览
    11.28 验证控件
    12.23,repeater 分页显示
    12.23,搜索标记
    1.基础CRUD
    C#杀进程与之之子进程
    使用procedump捕获未处理异常的dump
    [.net core] 12.环境变量
  • 原文地址:https://www.cnblogs.com/mabaishui/p/1899340.html
Copyright © 2011-2022 走看看