尖括号在数据URI中是否有效?

时间:2018-07-18 16:22:29

标签: http url-scheme data-uri rfc2396

我一直在阅读Data URIs,其中包含以下有效数据URI的示例:

data:text/html,<script>alert('hi');</script>

然而,通读RFC 2397后,我发现了以下内容:

dataurl    := "data:" [ mediatype ] [ ";base64" ] "," data
mediatype  := [ type "/" subtype ] *( ";" parameter )
data       := *urlchar
parameter  := attribute "=" value
  

其中“ urlchar”是从RFC2396导入的

但是在Section 2.4.3 of RFC2396中,它指出了已排除的US-ASCII字符列表,并特别指出:

  

尖括号“ <”和“>”和双引号(“)字符为      排除,因为它们通常用作URI中的定界符      文本文档和协议字段。

所以我的问题是MDN处的示例是否错误或者我是否误解了RFC中的某些内容?

1 个答案:

答案 0 :(得分:2)

该示例确实是错误的(因为数据URI无效,尽管它可能“起作用”)。