url_base
- 路径相对 URL (例如
data.csv) :按照 RFC 3986 与 base URL 的路径合并。base 路径中最后一个/之后的所有内容都会被相对 URL 替换,因此末尾是否带斜杠很重要:https://example.com/dir/+data.csv=https://example.com/dir/data.csv,而https://example.com/dir+data.csv=https://example.com/data.csv。如果 base URL 不包含路径 (例如https://example.com) ,则会插入一个/:https://example.com/data.csv。相对 URL 中的点分段 (./和../) 会被归一化:https://example.com/dir/+../a.csv=https://example.com/a.csv。 - 主机相对 URL (例如
/test/data.csv) :根据 base URL 的 scheme 和 host 进行解析。 - scheme 相对 URL (例如
//other.com/test/data.csv) :使用 base URL 的 scheme 进行解析。 - 仅查询引用 (例如
?x=1) :追加到 base URL 的路径后 (替换现有的查询字符串/片段) 。 - 仅片段引用 (例如
#frag) :追加到 base URL 后,并保留查询字符串 (替换现有片段) 。 - 空引用:返回不带片段的 base URL。
url_base 为 https://example.com/def/,则:
data.csv解析为https://example.com/def/data.csv/test/data.csv解析为https://example.com/test/data.csv//other.com/test/data.csv解析为https://other.com/test/data.csv