Я пытаюсь использовать веб-API Steam для получения JSON и анализа его с помощью JSON.Net. Я просто жестко кодирую URL-адрес, где я знаю, что я получу JSON. При запуске я столкнулся с следующей ошибкой:Неожиданный символ, встречающийся при разборе значения:
Неожиданный символ, встречающийся при разборе значения:. Путь '', линия 0, позиция 0.
Точки ошибок на линии 22 моего контроллера:
Строка 22: SteamResponse ответ = JsonConvert.DeserializeObject (JSON);
Вот мои классы:
public class Game
{
public int appid { get; set; }
public int playtime_forever { get; set; }
public int? playtime_2weeks { get; set; }
}
public class SteamResponse
{
public int game_count { get; set; }
public List<Game> games { get; set; }
}
public class RootObject
{
public SteamResponse response { get; set; }
}
Мой контроллер выглядит следующим образом:
List<Game> gameList = new List<Game>();
WebClient wc = new WebClient();
var json = wc.DownloadString("http://api.steampowered.com/IPlayerService/GetOwnedGames/v0001/?key=" + steamAPIKey + "&steamid=76561197994394917&format=json");
SteamResponse response = JsonConvert.DeserializeObject<SteamResponse>(json);
Я посетил URL в браузере, чтобы убедиться, что это правильно, и я также протестировали URL, используя JSON Lint. Я не уверен, что я делаю неправильно здесь. Я проверил другие темы и проверил проблемы, которые они перечисляли, но не нашел их.
Here is a link to the JSON I'm attempting to receive.
Спасибо за быстрый ответ. Да, я пробовал RootObject, и я получаю ту же ошибку. – Jorbyte
Возможно, это неверный ключ API потока, ссылка JSON, которую вы предоставили, работает для меня - https://dotnetfiddle.net/2KP7HO – devdigital
Ну, ключ API находится в URL-адресе для ссылки JSON, так что это должно быть правильно? Я даже скопировал ваш пример кода в локальное консольное приложение, которое я только что создал и запустил, но получил ту же ошибку. Я смущен. – Jorbyte