在Xamarin核心项目中使用HttpClient

bla*_*ool 7 dotnet-httpclient xamarin

我正在为多个平台做一个项目,我遵循最佳实践并创建了一个核心项目,以包含所有平台上相同的所有代码.为了进行网络通信,我想使用HttpClient,这似乎是推荐的与Web服务进行通信的方法.

我不是在做一个PCL,而只是一个包含核心项目的标准C#库.但是,似乎没有HttpClient的常见实现,只有平台特定的实现.我无法在我的核心中引用和使用它,但仅限于我的Android和iOS项目.

我非常希望在我的核心项目中拥有所有网络代码,因为我看到它有两个选项 - 我都不喜欢它们.

  1. 创建一个可以在核心项目中使用的通用接口,该项目在Android和iOS上作为包装器实现.
  2. 使用核心项目中支持的另一种技术 - 我在想webclient等.

什么是推荐的方法,为什么Xamarin没有将HttpClient作为公共库提供?

希望有人可以帮忙,谢谢

Bre*_*age 7

我建议查看ModernHttpClient https://github.com/paulcbetts/modernhttpclient

它是适用于iOS和Android的跨平台网络库.从项目:

该库通过自定义HttpClient处理程序为Xamarin应用程序提供最新的特定于平台的网络库.使用System.Net.Http编写您的应用程序,但删除此库,它将大大加快.