C # - проверьте, находится ли поток twitch в сети или нет

Я делаю консольное приложение С#, которое должно проверять, находится ли Twitch Stream в сети или нет. Думаю, для этого мне придется использовать Twitch API, с которым я не очень хорошо знаком. Поэтому мне нужна помощь в поиске решения.

Я провел собственное исследование, чтобы найти решение, но большинство из них, которые я нашел, устарели и больше не работают.

У меня есть идея, как это должно работать, но я не могу ее использовать.

Во-первых, я считаю, что мне нужно загрузить строку URL-адреса, которая выглядит примерно так:

curl -H 'Client-ID: uo6dggojyb8d6soh92zknwmi5ej1q2' -X GET 'https://api.twitch.tv/helix/streams?first=20'

Как я могу добиться этого на С#?

После этого результат анализируется, но я не уверен, как это сделать.

var r = JsonConvert.DeserializeObject<Rootobject>(json);

Может быть, это так (нашел в другом посте), но "Rootobject" имеет ошибку. Скорее всего чего-то не хватает.

Я не совсем уверен, имеет ли смысл то, что я сказал, но, в конце концов, я ищу решение, которое может проверить, находится ли поток Twitch в сети или нет.


person Jahanzaib Bokhari    schedule 20.09.2019    source источник
comment
Если вы получаете сообщение об ошибке, вам необходимо включить сведения об ошибке в ваше исключение. Вам также необходимо показать определение Rootobject и фрагмент JSON, который вы пытаетесь проанализировать. Просмотрите минимально воспроизводимый пример.   -  person mason    schedule 20.09.2019
comment
Ознакомьтесь с HttpClient, который позволит вам совершать вызовы API. Когда вы ссылаетесь на другой пост, какой именно?   -  person MickelsonMichael    schedule 20.09.2019
comment
Вам нужно будет сделать вызов API (с токеном приложения) к конечной точке, которая должна вернуть строку json, которую вы затем десериализуете.   -  person zaggler    schedule 20.09.2019
comment
Я могу десериализовать строку json только после того, как доберусь до этой точки, прямо сейчас я застрял на первом шаге. curl -H 'Идентификатор клиента: uo6dggojyb8d6soh92zknwmi5ej1q2' \ -X GET 'api.twitch.tv /helix/streams?first=20', как я могу отправить это как URL. идентификатор клиента должен быть отправлен в виде заголовка, но я не знаю, как это сделать в С#   -  person Jahanzaib Bokhari    schedule 20.09.2019
comment
Раньше это можно было сделать так: api.twitch.tv/kraken/streams. / Теперь это больше не работает, так как kraken больше не используется, вместо этого используется его спираль, и с учетом того, что он используется, идентификатор клиента должен быть отправлен в виде заголовка, который я не уверен, как делать   -  person Jahanzaib Bokhari    schedule 20.09.2019
comment
Это превратится в пошаговый вопрос о помощи-вампире, но проверьте следующую ссылку для класса/настройки, которую вы можете использовать для вызовов и заголовков API: Вопрос   -  person A Friend    schedule 20.09.2019
comment
Спасибо за это, но как бы вы сделали это в браузере? Так что я могу теперь все работает правильно, прежде чем я перейду к следующему шагу в приложении.   -  person Jahanzaib Bokhari    schedule 20.09.2019
comment
Зачем вам нужен браузер, чтобы проверить это? Вы всегда можете использовать независимый инструмент, такой как PostMan, для создания запроса.   -  person ADyson    schedule 20.09.2019