так что я новичок в программировании, но хочу углубиться в него. Недавно я начал участвовать в проекте по созданию программы WinForm для веб-сайта, использующего систему API в JSON.
Я никогда раньше не пользовался API, поэтому не совсем понимаю, как он работает, но, посмотрев на него несколько минут, я, кажется, уловил суть. Чего я не понимаю, так это того, как именно работает разбор JSON в С#.
Я нашел эта ссылка после небольшого поиска в Google. И у меня это работает (отчасти) с этим кодом.
static void Main(string[] args)
{
WebClient c = new WebClient();
var vLogin = c.DownloadString("https://www.openraid.us/index.php/api/login/username/password");
//Returns string
//{"status":1,"error":null,"token":"250-1336515541-c48d354d96e06d488d1a2530071ef07c9532da26"}
//Token = random, no decisive length*/
JObject o = JObject.Parse(vLogin);
Console.WriteLine("Login Status: " + o["status"]);
String sToken = "" + o["token"];
Console.WriteLine(sToken);
Console.WriteLine("");
//Breaks after this
var myRaids = c.DownloadString("https://www.openraid.us/index.php/api/myraids/"+sToken);
JObject r = JObject.Parse(myRaids); //error occurs here
String sEventId = "" + r["event_id"];
Console.WriteLine("Event ID: " + sEventId);
Console.ReadLine();
}
Итак, мне кажется, что я проанализировал и обработал 1 страницу, но когда я перехожу ко второй, я получаю эту ошибку.
Ошибка чтения JObject из JsonReader. Текущий элемент JsonReader не является объектом: StartArray. Путь '', строка 1, позиция 1.
Итак, я думаю, мой вопрос заключается в том, как мне анализировать более 1 страницы или вызов JSON и как проще всего разбить каждый раздел объекта JSON (такие как status
, error
и token
в строки C#?