C#中的等效curl请求

时间:2018-09-20 18:52:20

标签: c# curl get digest-authentication

我们需要接一个正在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")
);

任何帮助表示赞赏。

0 个答案:

没有答案