我试图在Windows机器上设置HTTP代理。问题是,密码中有一个特殊字符(@)导致set
命令失败。
我试过转义字符(\@
)和百分比编码与十六进制值(%40
),无济于事。
例如,使用用户名Foo和密码B @ r,我尝试了以下命令:
set http_proxy=http://foo:B\@r@http-gateway.domain.org:80
set http_proxy=http://foo:B%40r@http-gateway.domain.org:80
除了更改密码,我如何让代理使用密码?
集合是否失败或是由于@符号而使用http_proxy环境变量失败的工具?
—
Mike Cornell
是。因为格式是username:password @ server:port,在密码中间有@会导致密码的右侧被认为是主机名,因此上面的主机名解析失败,因为它认为主机名是r @ http- gateway.domain.org。“r @”不应该在那里。
—
Philluminati
我尝试使用%40并且它有效(在Windows上),你确定吗?
—
thegreendroid
实际上,它适用于Windows和Linux(Ubuntu)。
—
thegreendroid