从 Nuget.Server 获取 Json 而不是 XML
Get Json instead of XML from Nuget.Server
我已经设置了一个 Nuget.Server 来托管私人 nuget 提要。我正在尝试通过 API 访问该提要,但是我无法说服它给我 json 而不是 XML。
我的客户端代码如下:
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var packagesResult = client.GetAsync("http://localhost:61654/nuget/FindPackagesById()?id=\'Moq'").Result;
Console.WriteLine(packagesResult.Content.ReadAsStringAsync().Result);
我检查了 App_Start
中的格式化程序
GlobalConfiguration.Configuration.Formatters
有四个格式化程序,第一个是 json。
如何让 API 变为 return json 而不是 XML?
你的代码没有问题。但是,您似乎正在调用仅支持 XML 的 Nuget API V2。您可以检查响应内容类型。
Content-Type: application/atom+xml; type=feed; charset=utf-8
如果您想将 API 改为 return JSON 而不是 XML,请使用 Nuget API V3。
我已经设置了一个 Nuget.Server 来托管私人 nuget 提要。我正在尝试通过 API 访问该提要,但是我无法说服它给我 json 而不是 XML。
我的客户端代码如下:
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var packagesResult = client.GetAsync("http://localhost:61654/nuget/FindPackagesById()?id=\'Moq'").Result;
Console.WriteLine(packagesResult.Content.ReadAsStringAsync().Result);
我检查了 App_Start
中的格式化程序GlobalConfiguration.Configuration.Formatters
有四个格式化程序,第一个是 json。
如何让 API 变为 return json 而不是 XML?
你的代码没有问题。但是,您似乎正在调用仅支持 XML 的 Nuget API V2。您可以检查响应内容类型。
Content-Type: application/atom+xml; type=feed; charset=utf-8
如果您想将 API 改为 return JSON 而不是 XML,请使用 Nuget API V3。