我正在嘗試發(fā)送帶有我創(chuàng)建的對象的 json 字符串的 post 請求。然而,在序列化我的 C# 對象并發(fā)布后,我收到 400 錯誤(解析 JSON 時出現(xiàn)問題)我正在使用 Newtonsoft.Json dll 來序列化我的對象。這是我正在序列化的對象:public class CreateRepository{ [JsonProperty("name")] public string Name { get; set; } [JsonProperty("description")] public string Description { get; set; } [JsonProperty("homepage")] public object Homepage { get; set; } [JsonProperty("gitignore_template")] public string GitIgnoreTemplate { get; set; } [JsonProperty("license_template")] public string LicenceTemplate { get; set; } [JsonProperty("private")] public bool Private { get; set; } [JsonProperty("has_projects")] public bool HasProjects { get; set; } [JsonProperty("has_issues")] public bool HasIssues { get; set; } [JsonProperty("has_template")] public bool HasTemplate { get; set; } [JsonProperty("has_wiki")] public bool HasWiki { get; set; }}然后我像這樣序列化對象的實(shí)例:var content = JsonConvert.SerializeObject(repository);然后生成下面的 json 字符串:{ \"name\": \"Test\", \"description\":null, \"homepage\":null, \"gitignore_template\":null, \"license_template\":null, \"private\":false, \"has_projects\":false, \"has_issues\":false, \"has_template\":false, \"has_wiki\":false}}嘗試發(fā)布請求后,我得到以下信息:{ "message": "Problems parsing JSON", "documentation_url": "https://developer.github.com/v3/repos/#create"}有誰知道為什么我的對象以這種方式序列化?更新:我可以使用 JSON.Net 反序列化該對象,不會出現(xiàn)任何錯誤。我發(fā)布的網(wǎng)址如下:https://api.github.com/user/repos這就是我發(fā)送請求的方式:var response = await _httpClient.PostAsJsonAsync("user/repos", content);
1 回答

www說
TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個贊
問題是“has_template”在 Github 端是未知的,可能應(yīng)該是“is_template”。請參閱您在請求響應(yīng)中返回的鏈接以獲取正確的參數(shù)名稱。因此,您沒有在類中使用正確的屬性名稱/名稱屬性。序列化不是問題。
- 1 回答
- 0 關(guān)注
- 127 瀏覽
添加回答
舉報
0/150
提交
取消