Как правильно написать код запроса клиента HTTPS на C#?C#

Место общения программистов C#
Ответить
Anonymous
 Как правильно написать код запроса клиента HTTPS на C#?

Сообщение Anonymous »

Я написал этот клиентский код HTTPS для получения данных с сервера NSE.
При нажатии кнопки ожидается, что код отправит запрос на сервер и получит данные в ответ.
В половине случаев, когда Я нажимаю кнопку «Не получаю данные с сервера», и он возвращает мне код состояния 401 — Не авторизован. Но в другой половине случаев, когда я нажимаю кнопку, сервер возвращает мне необходимые данные и код состояния 200.
Я отправляю запрос GET на серверЭто мой код,

Код: Выделить всё

    private void Button_Click(object sender, RoutedEventArgs e)
{
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls13;

string baseUrl = "https://www.nseindia.com/api/reports?archives=";
string encodedurl = "[{\"name\":\"Full Bhavcopy and Security Deliverable data\",\"type\":\"daily-reports\",\"category\":\"capital-market\",\"section\":\"equities\"}]";
string endurl = "&date=31-Jul-2024&type=equities&mode=single";
string url = baseUrl + Uri.EscapeDataString(encodedurl)+endurl;

GetRequest(url);

}

async static void GetRequest(string url)
{

using (HttpClient client = new HttpClient())
{

client.DefaultRequestHeaders.Add("Accept", "*/*");
client.DefaultRequestHeaders.Add("Referer", "https://www.nseindia.com/all-reports");
client.DefaultRequestHeaders.Add("sec-ch-ua", "\"Not)A;Brand\";v=\"99\", \"Brave\";v=\"127\", \"Chromium\";v=\"127\"");

client.DefaultRequestHeaders.Add("user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36");
client.DefaultRequestHeaders.Add("x-requested-with", "XMLHttpRequest");

client.DefaultRequestHeaders.Add("Dnt", "1");

using (HttpResponseMessage response = await client.GetAsync(url))
{

using(HttpContent content = response.Content)
{

string myContent = await content.ReadAsStringAsync();

}
}

}
}
Один и тот же код иногда выполняется успешно, но иногда возвращает ошибку. Я потратил целый день, но так и не смог найти причину такого странного поведения кода.
Пожалуйста, подскажите мне.

Подробнее здесь: https://stackoverflow.com/questions/788 ... perly-in-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»