我们需要接一个正在curl中进行的调用,并使用C#进行等效调用。它进行调用以获取文本文件。我们需要使用摘要身份验证。
通话呼叫:
curl -v -k --digest -u id:password --get "https://filebox.mcl4e.com/rest/1/list/inbox/?login=user&pwd=password" -o C:\file_list.txt
当前,我们尝试了以下操作,但收到400错误的错误请求。
Uri uri = new Uri("https://filebox.mcl4e.com/rest/1/list/inbox/?login=user&pwd=password");
WebClient client = new WebClient();
CredentialCache credentialCache = new CredentialCache();
credentialCache.Add(new Uri("https://filebox.mcl4e.com"), // request url's host
"Digest", // authentication type
new NetworkCredential(id, password)); // credentials
client.Credentials = credentialCache;
client.DownloadFile(uri, @"C:\file_list.txt");
我还尝试了以下代码和完整的uri(包括查询字符串):
credentialCache.Add(
new Uri(uri.GetLeftPart(UriPartial.Authority)),
"Digest",
new NetworkCredential("user", "password")
);
任何帮助表示赞赏。