Url 在URI中,方案是可选的吗?

Url 在URI中,方案是可选的吗?,url,uri,Url,Uri,我最近被要求向一个网站添加一些Woopra JavaScript,并注意到URL以双斜杠开头(即省略了方案)。我以前从未见过这个,所以我尝试去了解更多,但我唯一能真正找到的是: 设置中的Woopra JavaScript在脚本的URL调用中不包含http。这是正确的。JavaScript已经过优化,可以在您的站点上快速高效地运行 但是,一些验证和现场测试/调试服务和工具无法识别代码是否正确。这是正确和有效的。如果警告让您感到不安,只需将http添加到脚本的URL中即可。它不会影响脚本 (为了澄清

我最近被要求向一个网站添加一些Woopra JavaScript,并注意到URL以双斜杠开头(即省略了方案)。我以前从未见过这个,所以我尝试去了解更多,但我唯一能真正找到的是:

设置中的Woopra JavaScript在脚本的URL调用中不包含http。这是正确的。JavaScript已经过优化,可以在您的站点上快速高效地运行

但是,一些验证和现场测试/调试服务和工具无法识别代码是否正确。这是正确和有效的。如果警告让您感到不安,只需将http添加到脚本的URL中即可。它不会影响脚本

(为了澄清,URL为“//static.woopra.com/js/woopra.v2.js”-除了“http”之外,还省略了冒号。)

关于这种做法还有更多的信息吗?如果这确实是有效的,那么必须有一个规范来讨论它,我非常希望看到它

提前感谢您满足我的好奇心

见第3节:

通用URI语法由 组件的层次顺序 被称为计划、管理局、, 路径、查询和片段

  URI         = scheme ":" hier-part [ "?" query ] [ "#" fragment
]

  hier-part   = "//" authority path-abempty
              / path-absolute
              / path-rootless
              / path-empty
方案和路径组件如下所示: 必需,但路径可能是
空(无字符)


这是一个有效的URL。它被称为中定义的“网络路径参考”。如果不指定方案/协议,它将返回到当前方案。因此,如果您通过https://查看页面,则所有网络路径引用也将使用https


例如,这里有一个指向该文档的链接,但带有网络路径引用。如果您是通过https查看此页面的(尽管看起来您不能将https与StackOverflow一起使用),该链接将反映您当前的URI方案,与第一个链接不同。

所以Woopra完全错误地认为它是“正确和有效的”?