2015-02-27 3 views
2

Я хочу получить изображение, отправив данные json в API. Я использую WebClient для загрузки изображения.Как загрузить изображение с помощью метода WebClient.UploadString?

string URI = "http://my_api.com"; 
string myParameters = "{'my': 'json_object'}"; 

using (WebClient wc = new WebClient()) 
{ 
    wc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded"; 
    string HtmlResult = wc.UploadString(URI, myParameters); 
} 

Тип возврата метода UploadString - строка. Как преобразовать этот результат в ContentType: image/jpeg?

ответ

0

Чтобы преобразовать строку в jpg, вам нужно преобразовать строку в байт [] ... но я спрашиваю, почему бы не использовать WebClient.DownloadFile?

using (WebClient w = new WebClient()) 
{ 
    //add user agent string 
    w.Headers.Add("user-agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36"); 
    //download to disk 
    w.DownloadFile(uri, savePath); 
} 

Я также добавил строку агента пользователя, указывающего Google Chrome к заголовку, поскольку некоторые серверы блокируют запросы, основанные на этом, возвращая запрещенную ошибку HTTP.

Смежные вопросы