FindProxyForURL 收到的是目标地址,而不是 PAC 下载 URL
用于获取 PAC 文件的查询参数不会自动作为每个传给路由函数的目标 URL 的一部分而暴露出来。
假设你的配置 URL 是 https://config.example/proxy.pac?office=west。在 FindProxyForURL(url, host) 内部,url 参数并不是那个配置 URL。
它描述的是正在被路由的目标请求,并受客户端已记录的清洗规则约束。脚本不会获得类似页面 location.search 那样含有 PAC 下载查询字符串的内容。
如果查询参数用于选择配置,就让配置服务器在生成返回的脚本时有意使用它。这样客户端得到的是显式策略,而不必在每次路由决策时试图恢复不可用的下载元数据。
保持输入受控,不要把机密发布在配置 URL 中。用于分发的 URL 可能出现在配置记录和服务器日志里。
这与解析目标的查询是两回事。浏览器同样可能从该目标输入中移除 HTTPS 路径与查询信息,但那是另一个边界,而不是对 PAC 下载 URL 的访问。