无法让 HttpClient 使用 PCL

Cannot get HttpClient working with PCL

我非常努力地在我的项目中使用 HttpClient 库。

我搞不懂这是怎么回事...

我尝试了本地 URL、在线示例,甚至在 Xamarin.Forms 页面上也没有。它只是行不通,我不知道我在这里做错了什么。

这是代码:(取自此处,顺便说一句:https://github.com/conceptdev/xamarin-forms-samples/blob/master/HttpClient/HttpClientDemo/Earthquake/GeoNamesWebService.cs

永远不会命中第二个断点。

这是我的参考部分:

我尝试手动插入 System.Net.Http 就像我在一些示例中看到的那样,但它也不起作用:

有什么想法吗?

编辑

要添加更多信息。如果我使用我的本地服务器并在那里设置断点,它也永远不会被击中。看起来请求从未 "leaves" 应用程序。我认为这可能与无法添加 System.Net.Http 有关。但是我不知道...这真的让我很紧张...

等待解决:

提琴手:

#   Result  Protocol    Host    URL Body    Caching Content-Type    Process Comments    Custom  
3675    200 HTTP    api.geonames.org    /earthquakesJSON?north=44.1&south=-9.9&east=-22.4&west=55.2&username=bertt  1,232   no-cache    application/json;charset=UTF-8  windowsformsapplication1.vshost:18544           

目标:

您是否尝试过从微软添加 nuget 组件 HttpClient。您需要这个才能与 PCL 一起使用

https://www.nuget.org/packages/Microsoft.Net.Http/

此时更多的是故障排除,因为有很多事情可能会出错。

  1. 下载 Fiddler,并尝试自己输入 url 以查看是否收到响应。

  2. 清理您的解决方案,然后重建。

我强烈建议您检查 Flurl 而不是 HTTPClient。

这里是 nuget 包 [这里] (https://www.nuget.org/packages/Flurl.Http/)

和 link 到 documentation

获取结果并解析它们非常简单,尤其是 Json:

T poco = await "http://api.foo.com".GetJsonAsync<T>();