网址空间; 浏览器变得更聪明还是服务器?

Xah*_*Lee 2 browser webserver

看起来今天您不再需要在HTML链接或图像链接中按%20编码空格.例如,假设您在〔http://example.com/i/my house.jpg〕上有此图像.注意那里的空间.在你的html代码中,你可以这样做:

<img src="http://example.com/i/my house.jpg" alt="my house">
Run Code Online (Sandbox Code Playgroud)

它适用于所有当前版本的浏览器.但是,我不确定浏览器是否在请求URL之前对其进行编码,或者特定服务器是否会使用带空格的路径进行编码?(阿帕奇)

附录:对此感到抱歉.我真正的问题是关于HTTP协议.我会按原样留下这个并标记已回答.我在这里发了一个新问题. HTTP协议是否需要在文件路径中编码空间?

Bra*_*rad 7

浏览器进行更正.

你仍然需要编码空格.仅仅因为它在您使用的浏览器中有效并不能使其有效,并不意味着它可以在任何地方使用.

您可以在此处查看应编码的保留字符列表和其他字符:http: //www.blooberry.com/indexdot/html/topics/urlencoding.htm

RFC1738具体说明:

因此,只有字母数字,特殊字符"$ -_.+!*'()",和用于各自保留目的的保留字符可以在URL中使用未编码.

RFC2396在RFC1738上进行,并阐述了URL中的空间使用情况:

空格字符被排除,因为当URI被转录或排版或受到文字处理程序的处理时,重要的空格可能会消失并且可能引入无关紧要的空格.Whitespace也用于在许多上下文中分隔URI.