以下是文档中的curl命令:
curl -g "http://ip.ip.ip.ip/test/xyz.jpg?attributes=size"
我可以像这样将它翻译成HttpReqeust吗?
UriBuilder builder = new UriBuilder("http", "ip.ip.ip.ip", 80, /test/xyz.jpg);
Uri uri = builder.Uri;
System.Net.HttpWebRequest request =
((HttpWebRequest)WebRequest.Create(uri + "?attributes=system::size"));
UriBuilder只是伪代码。我得到一个例外:错误请求
我是否必须使用请求标头来添加属性?或者这是如何工作的?
答案 0 :(得分:0)
你可以尝试:
UriBuilder builder = new UriBuilder("http", "ip.ip.ip.ip", 80, "/test/xyz.jpg");
Uri uri = builder.Uri;
System.Net.WebClient cli = new System.Net.WebClient();
cli.DownloadFile(uri.ToString() + "?attributes=size", "C:\\xyz.jpg");
您可以使用HttpWebRequest,但要下载文件还需要编写更多代码。如果需要,还要小心System.Web.HttpUtility.UrlEncode
任何查询字符串。
顺便提一下,为什么要在两个样本之间将?attributes=size
更改为?attributes=system::size
?