Есть страничка в интернете. Вот ссылка на страницу. В ней содержится табличка с данными. Пытаюсь ее скачать.
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;
HttpWebRequest request = WebRequest.CreateHttp(tbBaseURI.Text);
var response = (HttpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader streamReader = new StreamReader(responseStream);
string s = streamReader.ReadToEnd();
Страница скачивается, но вместо таблицы вижу надпись загрузка данных. По сути, нужно ~5 сек, что бы таблица загрузилась.
Как же получить полностью загруженную страницу? Может можно как-то сделать запрос, а начинать читать через 5 сек.
Cannot consume content type, думаем логически,Content type- это один из заголовков, пробуем поставить его таким, как на оригинальном запросе, отправляем и видим, что сервер теперь нам даетNo content to map to Object due to end of input, то есть у нас нет контента. Тип контента мы задали в заголовке какapplication/json, значит и контент надо отправлять в виде JSON. – EvgeniyZ Mar 07 '20 at 14:21Body, ставим типRaw(JSON) и копируем туда контент из запроса ({"organizationGuids":["c5a5aeb3-4c28-4558-b472-abfa87f98ec3"]}), пробуем отправить и видим, что сервер нам успешно отдал все нужные данные. Исходя из этого, вам при отправке запроса нужно установить заголовокContent-Typeи отправить данные в формате JSON. Кстати, вы используете давно устаревший классHttpWebRequest, советую перейти на новый, созданный для этого классHttpClient(об этом можете почитать в документации), а с ним вам и заголовки трогать даже не придется, лишь грамотное созданиеStringContent. – EvgeniyZ Mar 07 '20 at 14:22