如何强制 wget 不进行 URL 编码?
How to force wget to not URL-encode?
这看起来应该很简单,但我很难弄明白。我想发送一个类似于下面的 wget
请求,
wget http://www.foo.com/bar.cgi?param=\"p\"
但我不希望它 URL 对引号(或其他任何内容)进行编码。这可能吗?
为了清楚起见,我 a) 处理一个不 URL-解码的服务器 -- 我对此无能为力 -- b) 意识到我可以做到这一点使用 Python 脚本,或 Burp,或许多其他东西。我只需要知道 wget
是否可以做到。
谢谢!
您可以将 URL 括在单引号中。这也适用于带有和号和感叹号 (!) 的 URL。
因此 curl
不会自动对 GET 请求中的参数进行 URL 编码。这并不能完全回答我的问题,但它确实给了我另一种选择。这个:
curl 'http://www.foo.com/bar.cgi?param="p"'
成功了。
我 运行 遇到了同样的问题,并且 wget
中已经有了工作代码,我希望保持这种状态。 wget
网站上有一些关于使用 --restrict-file-names=modes
提供对这些参数的一些控制的文档
https://www.gnu.org/software/wget/manual/wget.html#URL-Format
这看起来应该很简单,但我很难弄明白。我想发送一个类似于下面的 wget
请求,
wget http://www.foo.com/bar.cgi?param=\"p\"
但我不希望它 URL 对引号(或其他任何内容)进行编码。这可能吗?
为了清楚起见,我 a) 处理一个不 URL-解码的服务器 -- 我对此无能为力 -- b) 意识到我可以做到这一点使用 Python 脚本,或 Burp,或许多其他东西。我只需要知道 wget
是否可以做到。
谢谢!
您可以将 URL 括在单引号中。这也适用于带有和号和感叹号 (!) 的 URL。
因此 curl
不会自动对 GET 请求中的参数进行 URL 编码。这并不能完全回答我的问题,但它确实给了我另一种选择。这个:
curl 'http://www.foo.com/bar.cgi?param="p"'
成功了。
我 运行 遇到了同样的问题,并且 wget
中已经有了工作代码,我希望保持这种状态。 wget
网站上有一些关于使用 --restrict-file-names=modes
https://www.gnu.org/software/wget/manual/wget.html#URL-Format