我在Visual Studio 2015更新2中使用Xamarin创建了一个新的iPhone(iOs 9.3)应用程序。我在Mac上有Xamarin beta频道(有Xcode等)。
我有这段代码:
using Windows.Web.Http;
...
private async void GetPois()
{
var client = new HttpClient();
var response = await client.GetAsync(new Uri("http://onlinesource/json"));
}
我在GetAsync
上收到错误我没有安装httpclient nuget,因为它引发了错误。
已经安装了ModernHttpClient
nuget,但没有使用它。 @Andrii Krupka是的我也有using System;
我添加了System.Net.Http
而不是Windows
,但现在我找不到类型或命名空间。添加了对system.net和system.net.http的引用,现在它可以工作了。接下来要解决的问题是禁用ats。将此标记为@SushiHangover的回答,谢谢大家!
答案 0 :(得分:5)
使用名称空间System.Net.Http
代替Windows....
。
然后你的HttpClient
在iOS下运行正常,假设你已经禁用ATS,因为这是一个非安全的HTTP链接......; - )
var client = new HttpClient();
var response = await client.GetAsync(new Uri("http://onlinesource/json"));
个人说明:我非常喜欢ModernHttpClient
@
https://github.com/paulcbetts/modernhttpclient
(跨平台,PCL,更清洁,更快,能够在单个请求中跨越建筑物等等)