Xamarin.Forms HttpWebResponse 挂起/冻结

jwk*_*knz 3 c# httpwebrequest xamarin xamarin.forms

HttpWebResponse我的内部对象出现问题Task<T>

public async Task<string> Get(string url)
{
    using (var client = new HttpClient())
    {
        client.BaseAddress = new Uri(urlAddress);
        WebRequest request = WebRequest.Create(url);

        Debug.WriteLine($"CHECKING 5000");

        using (var resp = (HttpWebResponse)await request.GetResponseAsync() as HttpWebResponse)
        {
            Debug.WriteLine($"CHECKING 10000");

            if (resp.StatusCode == HttpStatusCode.OK)
            {
                //var json = await result.Content.ReadAsStringAsync();
                //status = JsonConvert.DeserializeObject<MyResultObject>(json);

                Debug.WriteLine($"CHECKING = {resp.StatusCode}");
            }
        }
    }

    return "";
}
Run Code Online (Sandbox Code Playgroud)

我在这里有一些Debug.WriteLine()可以轻松查看我的代码到达的部分。

我可以看到Debug.WriteLine($"CHECKING 5000");
我看不到Debug.WriteLine($"CHECKING 10000");

我可以在浏览器中正常访问该网站,所以我不确定这里的问题是什么。

我可以做什么来查看为什么它不起作用然后修复它?

pin*_*dax 5

尝试这个

public async Task<string> Get(string url)
{

    Debug.WriteLine($"CHECKING 5000");

    using (var client = new HttpClient())
    {
        Debug.WriteLine($"CHECKING 10000");

        var resp = await client.GetAsync (url);

        //you can replace the if below with response.IsSuccessStatusCode
        if (resp.StatusCode == HttpStatusCode.OK)
        {
            Debug.WriteLine($"CHECKING = {resp.StatusCode}");
        }

    }

    return String.Empty;
}
Run Code Online (Sandbox Code Playgroud)