我写了一个 Xamarin Forms 应用程序。它使用 HttpClient。我的方法的代码是
public static async Task<List<CarshareList>> SearchRidesAsync(string fromCity, string toCity, DateTime date, string type = "shares", CancellationToken token = default(CancellationToken))
{
using (var client = new HttpClient())
{
string s = "https://prevoz.org/api/search/shares/?";
s += "f=" + fromCity+"&";
s += "fc=SI" + "&";
s += "t=" + toCity + "&";
s += "tc=SI" + "&";
s += "d=" + date.ToString("yyyy-MM-dd");
var z = await client.GetAsync(new Uri(s));
List<CarshareList> moj = new List<CarshareList>();
var y = await z.Content.ReadAsAsync<CarshareResponse>();
foreach (var a in y.CarshareList)
moj.Add(a);
return moj;
}
}
当我从家庭网络中的笔记本电脑调用该服务时,我会在 UWP 和 Android 应用程序中收到结果(无法测试 iOS)。一切正常。当我在学校运行相同的代码(相同的笔记本电脑)时,我没有收到任何结果。我试图调试我的项目并在线
var z = await client.GetAsync(new Uri(s));
返回主页面。这在学校里总是发生。z 没有任何返回码。如果我在网络浏览器中复制我的通话 URL(在学校),我会得到正常的 JSON 结果。我错过了什么?谢谢,芭芭拉