URI 授权
URI 的**授权**是出现在方案之后、路径之前的部分。它最多可能包含三个部分:用户信息、主机和端口。
语法
url
host
host:port
user@host
user@host:port
- 主机
-
主机通常是托管资源的服务器的域名或 IP 地址。域名使用域名系统解析为 IP 地址。
- 端口 可选
-
端口是一个数字,指示服务器正在监听请求的端口。它是可选的,HTTP 的默认值为 80,HTTPS 的默认值为 443。其他方案可能定义自己的默认值或将其设置为强制。
- 用户 可选
-
用户是可选的,用于身份验证目的。它在 Web URI 中并不常用。
警告:不建议直接在 HTTP URL 中提供用户信息,因为这可能会泄露敏感信息。请改用其他方法,例如 HTTP 身份验证或会话 cookie。有时,网络钓鱼网站会通过显示误导性的 URL 来欺骗用户,这些 URL 的“用户”部分看起来像是一个域名,被称为语义 URL 攻击。
示例
https://mdn.org.cn-
主机是
developer.mozilla.org。端口未指定,但如果通过https:访问,则默认为 443。 https://:8080-
主机是
localhost,端口是8080。localhost是一个特殊的主机名,浏览器会将其解析为本地地址127.0.0.1。 postgresql://postgres:admin123@db:5432-
主机是
db,端口是5432。它还指定了一个用户postgres及其密码admin123。这可用于连接到 PostgreSQL 数据库。 https://cnn.example.com&story=breaking_news@10.0.0.1-
一个看起来指向可信网站的误导性 URL。但是,主机名是
10.0.0.1,cnn.example.com&story=breaking_news部分是“用户”。