【发布时间】:2020-04-07 08:23:53
【问题描述】:
-
获取
Response的代码:public async Task<List<RepositoryListResponseItem>> MakeGitRequestAsync<T>(string url) { List<RepositoryListResponseItem> res = new List<RepositoryListResponseItem>(); using (var httpClient = new HttpClient()) { httpClient.DefaultRequestHeaders.Add("Accept", "application/vnd.github.v3+json"); httpClient.DefaultRequestHeaders.Add("User-Agent", "HttpFactoryTesting"); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); using (HttpResponseMessage response = await httpClient.GetAsync(url)) { if (response.IsSuccessStatusCode == true) { string apiResponse = response.Content.ReadAsStringAsync().Result; res = JsonConvert.DeserializeObject<List<RepositoryListResponseItem>>(apiResponse); } } } return res; } -
模型对象:
public class RepositoryListResponseItem { [Description("Repo Name")] [JsonPropertyName("full_name")] public string RepoName { get; set; } [Description("Repo Link")] [JsonPropertyName("html_url")] public string RepoLink { get; set; } }-
我得到字符串后的 HttpWebResponse (
string apiResponse = response.Content.ReadAsStringAsync().Result)[{\"id\":114995175,\"node_id\":\"MDEwOlJlcG9zaXRvcnkxMTQ5OTUxNzU=\",\"name\":\"AlcoholConsumption\",\"full_name\":\"ihri/AlcoholConsumption\",\....
-
我有 C#.NET 服务,我正在使用 GitHub API。我能够成功获取数据,但不幸的是格式不正确(请检查步骤 3)。 我无法将响应转换为我的自定义对象)
这里,准确地说是JSONarray。
【问题讨论】:
标签: c# json asp.net-core json-deserialization