suresh shewale Ответов: 2

Как я могу вытащить все 100 страниц из стороннего API с помощью webrequest


Я создал один веб-сервис C#, где
1. Сначала я не нахожу ни одной страницы для этого диапазона дат
2. После этого в цикле я сделал запрос страницы, после 3-го запроса я получил ошибку 524

частная строка postPaymentRequestToGateway(строка queryUrl, строка urlParam)
{

Строковое сообщение = "";
StreamWriter myWriter = null;// он откроет http-соединение с предоставленным url-адресом
Servicepointmanager и.SecurityProtocol = SecurityProtocolType.Tls12;
WebRequest objRequest = WebRequest.Create(queryUrl);//отправка данных с помощью объекта objxmlhttp
WriteToFile("Время Запроса До Ответа" + Система.Датавремя.Сейчас);
objRequest.Метод = "сообщение";
пробовать
{
objRequest.ContentType = "application/x-www-form-urlencoded";//для установки типа контента
myWriter = новая система.ИО.Модулю записи StreamWriter(objRequest.Метод getrequeststream());
мой автор.Write(urlParam);//отправка данных
мой автор.Close();//закрыл объект myWriter object=-[ TR

// Получение Ответа
//using (System.Net.HttpWebResponse objResponse = (System.Net.HttpWebResponse)objRequest.GetResponse())
использование (WebResponse objResponse = objRequest.GetResponse())
//получить ответ от объекта objxmlhttp
{
//Нить.Сон(10000);
WriteToFile("Время Запроса После Ответа" + Система.Датавремя.Сейчас);
using (System.IO.StreamReader sr = new System.IO.StreamReader(objResponse.GetResponseStream()))
{
сообщение = СР.ReadToEnd();
СР.Рядом();
}
//WriteToFile("время запроса после ответного сообщения" + сообщение);
}

}

поймать (исключение исключение)
{

WriteToFile("внутренний стек исключений" + исключение.Трассировка стека);
WriteToFile("внутреннее исключение" + исключение.Внутреннее исключение.Сообщение);
}
наконец
{
objRequest.Выкинуть();

мой автор.Close();//закрыл объект myWriter//05April2019

}
возвращаемое сообщение;

}

Что я уже пробовал:

Для этого я добавил objRequest.Abort(); в методе finally
Я пробовал различные варианты, но не могу найти решение .
Ошибка в objRequest.GetResponse ()), где ответ занимает больше времени после третьей страницы
а потом ошибка тайм-аута .
Может ли кто-нибудь сказать мне, как решить эту проблему?.......

2 Ответов

Рейтинг:
1

Richard MacCutchan

Код ошибки 524 может означать ошибку тайм-аута, что означает, что сервер не может удовлетворить ваш запрос. Вам нужно поговорить с поставщиками API.


suresh shewale

связана ли эта ошибка только с поставщиком API?....Есть ли какая-то альтернатива ?As API Provider provider дает ответ на одностраничный запрос очень хорошо.....

Рейтинг:
0

suresh shewale

Привет
Я решил свою проблему
То, что я сделал, это
Я увеличил время выполнения в web.config для веб-службы, где я развернул свою службу.
<httpruntime executiontimeout="1000">

Это решает мою проблему
и спасибо Ричардсу.....