Эквивалентный запрос curl в c # - PullRequest
       15

Эквивалентный запрос curl в c #

0 голосов
/ 20 сентября 2018

Нам нужно принять вызов, который мы делаем в curl, и сделать эквивалентный вызов в C #.Он делает звонок, чтобы получить текстовый файл.Нам нужно использовать дайджест-проверку подлинности.

Вызов Curl:

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")
);

Любая помощь приветствуется.

...