uric = reserved | unreserved | escaped
(1) reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" |
"$" | ","
(2) unreserved = alphanum | mark
mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"
(3) 除以上的字符外,均是:
escaped = "%" hex hex
hex = digit | "A" | "B" | "C" | "D" | "E" | "F" |
"a" | "b" | "c" | "d" | "e" | "f"
由上述可知:
当提交的表单中,含有的字符
1.属于情况(3)时,需要UrlEncode;
2.属于情况(1)时,需要UrlEncode,因为作为query的value部分,当然不能有reserved字符;
3.属于情况(2)时,不需要UrlEncode。不过,对(2)的mark字符,有些浏览器选择性地对它们进行了UrlEncode。
参考:http://www.faqs.org/rfcs/rfc2396.html
分享到:
相关推荐
- **修改URI组件**:你可以单独修改URI的任何部分,如更改路径、添加或删除查询参数、更新主机名等,然后重新组合成一个新的URI字符串。 - **规范化和比较URI**:Uri库支持URI的规范化,确保相同含义的URI以相同的...
1. **URI的组成部分**:一个标准的URI由多个部分组成,包括协议(如http、ftp)、主机名、端口号、路径、查询字符串和片段标识符。函数可能涉及解析这些组件并提供访问它们的方法。 2. **编码与解码**:URI中不能...
1. **IRI支持**:`Addressable::URI`类可以处理包含Unicode字符的IRIs,这对于处理国际化的Web应用非常有用。 2. **安全的URI解析**:`Addressable`能够处理潜在的恶意URI,例如那些包含特殊字符或尝试进行路径遍历...
1. **URI解析与构造**:uri-util提供了解析URI字符串为对象的函数,这个对象包含了URI的各个组成部分,如协议、主机、路径、查询参数等。同时,它还支持将这个对象再转换回URI字符串。 2. **编码与解码**:在URI中...
1. **URI解析与构造**:它可以将一个完整的URI字符串解析为各个组成部分,如协议、主机、路径、查询参数等,并允许用户通过这些部分来构建新的URI。 2. **路径处理**:支持路径的合并、分割、添加和删除,方便在...
同时,URI也是Web服务、API设计和Web应用程序交互的基础。 这份61页的完整英文电子版提供了对URI标准的全面解读,对于网络开发者、系统架构师、网络管理员以及其他与互联网技术相关的专业人士来说,是一份非常有...
例如,可以创建一个结构体来存储URI的不同组件,并编写解析函数,从给定的URI字符串中提取这些信息。同时,为了编码和解码URI,可能需要了解和应用URI编码规则,如百分号编码(%xx)来处理非ASCII字符。 在实际应用...
1. CLI模式下,使用PHP的$_SERVER['argv']数组获取传递给脚本的参数,这些参数组成一个数组,然后通过私有方法_private_parse_cli_args()来构造URI字符串。 2. 如果不是CLI模式,且config['uri_protocol']设置为'...
使用`URI`类解析URI字符串: ```python uri = URI("http://example.com/path/to/page?key1=value1&key2=value2#section") ``` 通过访问`uri`对象的属性,我们可以获取各个部分: - `uri.scheme` 获取方案 - `uri....
1. 解析和验证URI字符串的语法,确保它们符合URI的语法规则。 2. 将URI的不同部分提取出来,如协议(http, https等)、主机、路径、查询参数和片段。 3. 对URI进行编码和解码,处理特殊字符。 4. 使用SQL创建和操作...
《RFC 3986:2005 Uniform ...总之,《RFC 3986》是互联网资源标识的核心规范,对于理解和操作URI的正确性至关重要,对于开发Web应用程序、构建网络服务和理解互联网工作原理的专业人士来说,是必不可少的参考资料。
* URI(Uniform Resource Identifier)是统一资源标识符,是以特定语法标识一个资源的字符串。URI 由模式和模式特有的部分组成,它们之间用冒号隔开。 二、动态 Web 文档技术 * 动态 Web 文档技术包括服务器端动态...
创建一个`<a>`元素,并将其`href`属性设置为我们想要解析的URI,然后可以访问该元素的相关属性来获取URI的各个组成部分。 例如,对于URL `//www.jb51.net/search/?q=js&type=`,我们可以这样做: ```javascript ...
在Java和JSP开发中,`web.xml`文件是一个至关重要的组成部分,它是Servlet容器(如Tomcat)的部署描述符。这个文件包含了关于Web应用程序的配置信息,包括Servlet的定义、过滤器、监听器、会话配置、MIME类型映射、...
在Python中,处理URI是网络编程的基础,特别是在构建Web应用程序、爬虫或者数据抓取项目时。本教程将通过一个URI在线法官项目,帮助你深入理解Python语言在处理URI时的应用。 首先,Python内置了`urllib.parse`模块...
JavaScript中的编码和转义函数主要有encodeURI、encodeURIComponent和escape这三个函数,它们用于处理URL和URI中的特殊字符。下面将详细介绍这三个函数的功能和使用场景。 首先,encodeURI函数的主要用途是编码整个...
总的来说,理解和正确处理URI是Web开发中的基础技能,通过学习和实践,我们可以避免常见的URI问题,提高应用的稳定性和安全性。"URI-Problems:URI问题解决文件"应该提供了详细的指南和案例,帮助开发者诊断并解决...
总之,Web API是现代互联网应用的核心组成部分,它提供了一种标准化的方式来构建和消费网络服务。"WebApplication1.rar"中的项目可能包含了从创建、路由到响应处理的整个Web API实现过程,为学习和理解Web API提供了...
* URI(Uniform Resource Identifier)称为统一资源标识符,是以特定语法标识一个资源的字符열。URI由模式和模式特有部件组成,通常格式如下:schema:schema-specific-part。URI是URL和URN的超集。 二、动态Web文档...
7. **统一资源定位符(URI)和请求映射**:在Java Web中,URI用来识别应用中的资源,而请求映射定义了Servlet如何响应特定的HTTP请求。 8. **会话管理**:通过HttpSession接口,可以存储和检索用户的会话信息,实现...