URL 是否允许包含空格?

2023-12-08

URI(特别是 HTTP URL)是否允许包含一个或多个空格字符?如果一个网址must被编码,是+只是一个普遍遵循的惯例,还是一个合法的替代方案?

特别是,有人可以指出一个 RFC 来指示带有空格的 URLmust被编码?

提问动机:在对网站进行 Beta 测试时,我注意到某些 URL 的构造中带有空格。 Firefox 似乎做了正确的事情,这让我感到惊讶!但我希望能够向开发人员指出 RFC,以便他们觉得有必要修复这些 URL。


As per RFC 1738:

Unsafe:

由于多种原因,角色可能不安全。空间 字符是不安全的,因为重要的空格可能会消失并且 转录 URL 时可能会引入无关紧要的空格,或者 排版或经过文字处理程序处理。那些角色"<" and ">"不安全,因为它们被用作 自由文本中 URL 周围的分隔符;引号 (""")用于 在某些系统中分隔 URL。人物"#"是不安全的,应该 总是被编码,因为它被用于万维网和其他 系统将 URL 与片段/锚点标识符分隔开来,该标识符可能 跟着它。人物"%"不安全,因为它用于 其他字符的编码。其他字符不安全,因为 众所周知,网关和其他传输代理有时会修改 这样的人物。这些字符是"{", "}", "|", "\", "^", "~", "[", "]", and "`".

所有不安全字符必须始终编码在 URL 中。为了 例如,字符"#"必须在 URL 中进行编码,即使在 通常不处理片段或锚点的系统 标识符,这样如果 URL 被复制到另一个系统中 如果使用它们,则无需更改 URL 编码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

URL 是否允许包含空格? 的相关文章

随机推荐

  • 循环遍历具有特定扩展名的所有文件并对其执行某些操作

    这是我第一次使用 Linux shell 脚本 它看起来确实很强大 但我仍然有点困惑 我想循环遍历目录中具有特定扩展名的所有文件递归地 所有子目录 子子目录和 并通过在它们上运行可执行文件在原始文件的确切位置生成一个具有相同名称但扩展名不同
  • 从两列映射中对多对多关系进行分组

    我有一个 SQL 表 可以映射作者和书籍等内容 我想将链接的作者和书籍 同一作者撰写的书籍以及共同撰写一本书的作者 分组在一起 并确定这些组的规模有多大 例如 如果 J K 罗琳与朱诺 迪亚兹合写 朱诺 迪亚兹与扎迪 史密斯合写了一本书 那
  • 单击 UIWebView 上的链接时打开新的 UIViewController

    我发现这个线程符合我的问题 单击 UIWebView 中的链接会推送到 NavigationView 堆栈 但以下情况有所不同 我没有使用导航控制器 而是使用基于视图的应用程序在按下相应按钮时手动切换到不同的视图控制器 我没有使用链接 而是
  • Excel VBA:形状集合中的索引 = ZOrderPosition?

    工作表的 Shapes 集合中形状的索引是否始终与其 ZOrderPosition 相同 原则上不能直接查询给定形状的索引 我已经在少数情况下 最多 3000 个形状 验证了这一点 但我没有找到任何相关文档 我遍历了整个集合 询问 Inde
  • 无法解析 Spring 属性占位符

    我有我的配置
  • 将一个正则表达式匹配替换为另一个正则表达式匹配,反之亦然

    我需要替换为字符串foo bar foo bar bar foo all foo to bar和所有bar to foo 所以结果应该是这样的bar foo bar foo foo bar 我已经尝试过这种方式 library string
  • 如何使用 EF Core 2.2 将 JSON_VALUE 转换为 DateTime?

    我正在测绘JSON VALUE使用来自的技术如何编写DbFunction的翻译 由于 JSON 中并非所有值都是字符串 因此有时需要进行转换 当转换为int 一切安好 var results context Set
  • JasperReports:如何屏蔽或过滤图表轴上的标签

    我正在使用基于简单数据集的简单面积图 如下所示 DateTime sql timestamp Value Integer 2012 02 17 00 02 02 100 2012 02 17 00 02 08 110 2012 02 17
  • `margin:auto;` 不适用于内联块元素

    我有一个 容器 div我给了margin auto 只要我给它一个特定的 它就工作得很好width 但现在我把它改为inline block and margin auto 停止工作 旧代码 有效 container border 1px
  • Java 非最终 int(s) 构造后可见

    我有一个带有非最终 int 变量的 java 类 我在构造函数中将其显式初始化为 0 对该变量的所有其他访问均由 ReentrantLock 管理 我是否需要担心线程不会看到初始值 0 因为我没有在构造函数中使用锁 是的 你必须担心 为了避
  • 如何通过命令提示符获取硬件 ID/序列号?

    最终我将在 Java Applet 中使用它来为用户提供额外的安全性 我知道这是可能的 因为我记得以前做过 只是不记得获取正确信息的行 我正在寻找将返回处理器 ID 序列号的行 只要这两个就好了 我使用过谷歌并尝试了一些命令 例如 wmic
  • SQL Server 2005 中使用 XML 的层次结构

    我想知道是否有办法在 SQL Server 2005 中选择层次结构并返回 xml 格式 我有一个包含大量数据的数据库 大约 2000 到 3000 条记录 我现在使用 SQL Server 2005 中的一个函数来检索层次结构中的数据并返
  • C#中如何获取IP地址?

    假设一台计算机连接到许多网络 实际上不止一个 我可以获得一个IP地址列表 其中包括计算机在网络中拥有的所有IP地址 但是我如何知道某个IP地址属于哪个网络呢 首先 您需要了解一些术语 这些示例数字假定 IPv4 网络 IP地址 192 16
  • 如何为 Json.net 生成 json 对象的所有可能的 LINQ 字符串?

    在 json net 中 我们可以使用基于 linq to json 的本教程 我想知道有没有办法生成字符串查询 考虑这个 json 示例 Name Test Status S1 S2 S3 S4 People Name A Family
  • 使用facet_wrap向ggplot添加图例

    我在用小面包裹显示两个变量 a and b 四个城市 我可以根据城市对图进行分组 但无法显示变量的图例 即a and b using scale color discrete ggplot geom line data df aes x y
  • Angular 7 - 重新加载数据表中的数据

    我正在使用 Angular 7 和 Angular Datatables 我正在尝试定义一个 重新渲染 按钮以重新加载数据就像这个例子一样 我不明白应该在渲染函数中放置什么 我的API函数 fn getFavoriteTables this
  • SQL Server 查询日期范围内一个月的总天数

    我有特定的日期范围 例如 From Date To Date 2012 11 10 2012 11 15 2012 11 21 2012 11 22 2012 11 30 2012 12 01 我想编写一个 SQL 查询来计算两个日期之间的
  • KML / Google 地图 - 指定 iFrame 中嵌入地图的缩放级别

    我在 Google 地图中加载了以下 kml 文件 它正确定位了指针 但它始终以最大级别缩放 使用谷歌地图 API 我可以设置自己的缩放级别 但我尝试使用 iFrame 中的嵌入式地图 由谷歌提供 来执行此操作 有没有办法在 kml 本身中
  • 使用 objectify 进行过滤和排序的 GAE 数据存储查询

    我正在尝试在数据存储中查询过去一周 日期字段 登录的得分最高的 100 位用户 List
  • URL 是否允许包含空格?

    URI 特别是 HTTP URL 是否允许包含一个或多个空格字符 如果一个网址must被编码 是 只是一个普遍遵循的惯例 还是一个合法的替代方案 特别是 有人可以指出一个 RFC 来指示带有空格的 URLmust被编码 提问动机 在对网站进