http - 网址中的空格?

标签 http url standards

<分区>

w3fools声称 URL 可以包含空格:http://w3fools.com/#html_urlencode

这是真的吗? URL 如何包含未编码的空格?

我的印象是 request line of an HTTP Request使用空格作为分隔符,格式为 {the method}{space}{the path}{space}{the protocol}:

GET /index.html http/1.1

那么 URL 怎么可能包含空格呢?如果可以,用+替换空格的做法从何而来?

最佳答案

URL 不得包含文字空格。它必须使用 percent-encoding 编码或使用 URL-safe characters 的不同编码(例如 application/x-www-form-urlencoded 对空格使用 + 而不是 %20)。

但是这个说法是对是错还要看解释:从句法上讲,URI 不能包含文字空格,必须进行编码;从语义上讲,%20 不是空格(很明显),但它代表一个空格。

关于http - 网址中的空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5442658/

相关文章:

java - 获取http变量JSF

url - Url 查询字符串的最佳压缩算法

c++ - 为什么 std::exchange 不是 noexcept?

javascript - 如何在 React 中正确处理 cookie

spring - POST 后重定向与 GET 后重定向

OutputStream 上的 Java 自动 HTTP header

javascript - 多个 if 语句根据 URL 返回 css 值

iphone - 支持 openURL : 的 iPhone 应用程序列表

c++ - 为什么 const 引用会延长右值的生命周期?

git - 您在团队中使用哪些指南或标准进行版本控制?