Итак, я просто играю с Spotify Web API, и я пытаюсь получить доступ к моим топ-трекам. Хотя я столкнулся с проблемой, которую я пытался решить в течение нескольких часов, но я не могу найти ответ.
Когда я пытаюсь десериализовать свой ответ, я получаю следующую ошибку:
'UTF8' не является поддерживаемым именем кодировки. Информацию об определении настраиваемой кодировки см. В документации по методу Encoding.RegisterProvider. Имя параметра: имя Недопустимый набор символов, указанный в ContentType. Невозможно прочитать содержимое как строку, используя недопустимый набор символов.
ContentType - application/json; charset=UTF8
Любые идеи?
Здесь мой код запроса:
private static HttpClient GetHttpClient()
{
HttpClientHandler handler = new HttpClientHandler() {
AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate
};
var httpClient = new HttpClient(handler);
httpClient.DefaultRequestHeaders.Add("Accept", "application/json");
return httpClient;
}
public async Task<SearchArtistResponse> GetSelfTopAsync(string type, string userName)
{
var httpClient = GetHttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", GetAccessToken(userName));
var sb = new StringBuilder();
sb.Append(ApiUrl);
sb.Append($"/me/top/{type}");
var query = sb.ToString();
var response = await httpClient.GetAsync(query);
var spotifyResponse = JsonConvert.DeserializeObject<SearchArtistResponse>(await response.Content.ReadAsStringAsync());
return spotifyResponse;
}