我理解这两个术语有重要的重叠。 协议 是信息传输的约定方法,方案 是URL使用的标识符,以表达特定资源应在何种协议上提供服务。简而言之,方案只是协议的标识符。
在链接https://example.com中,https是方案,告诉浏览器(或请求该资源的人)将在Hypertext Transfer Protocol Secure(HTTPS)上为example.com上的资源提供服务,这是一种“协议”类型。
ftp <> File Transer protocol
http <> Hypertext Transfer Protocol
https <> Hypertext Transfer Protocol Secure
方案和协议并不相同,因此从技术上回答您的问题,在URL中并没有协议,只有方案。
要知道协议是什么,您需要检查请求。
考虑您的URL是(引用自@clayjones94的答案):
而您的HTTP请求(片段)开始于:
GET / HTTP/1.1
Host: example.com
...
https将是方案
HTTP/1.1将是协议
人们混淆或交替使用它们的原因是因为他们基于方案推测协议, 但事实并非如此,因为您可以使用HTTP/1.1或HTTP/2协议之一向使用https方案的https://example.com发送请求。
http:
方案与 HTTP/1.0 或 1.1 协议相关联[2],但 file:
方案与任何协议均无关系。 Http
是一个既是方案又是协议的表示,而 file
是一个方案但不是协议。
mailto
。所以在这种情况下,协议名称与方案语法相同。 - clayjones94