最近我在 CDN 文档中看到了这些类型的 URL:
//cloudflare.cdnjs.com/foo
我意识到他们前面缺少 http:
或 https:
。
嗯,我想,并尝试在本地测试中实现它们,并意识到它们不起作用(它们将 //
解析为 file://
,尽管它应该是 http:
)。
然后,当我将其上传到测试服务器时,它起作用了(将 //
解析为 http://
)。
所以我想知道,为什么有人会在没有协议(protocol)的情况下编写它?
谢谢。
最佳答案
(从技术上讲,这不是“协议(protocol)”,而是 URI 方案)
对于 HTTP,排除方案意味着 UA 将使用当前方案(以及协议(protocol))来检索文件,这意味着某些复制+粘贴的代码可以重新用于 HTTP 和 HTTPS(甚至 SPDY)请求而不触发浏览器中的“部分安全页面”警告。
关于javascript - 排除 URL 前面的 URL 方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21248879/