HttpClient 结果转换超时

特布兰奇·丹尼尔

我正在开发一个与 asp.net Web API(我创建的)一起工作的小型 Xamarin 表单应用程序。

我想要实现的是检查 API 是否在线/正在运行(只是一些错误处理)。我所做的是在 API 中添加了一个测试控制器,当请求返回 true 时。如果 API 在线,我得到 true 并且它可以工作,当它离线时,我尝试将结果转换为 bool 需要很长时间(+20 秒)才能进入 catch 块,此时我的应用程序挂起.

请告知该怎么做,或者是否有更好的方法来处理这个问题,因为我对这两者都是新手(Xamarin 表单和 API)

public static bool testConnection()
{
    HttpClient _client = new HttpClient();
    try
    {
        var content = _client.GetStringAsync(apiUrl + "/api/Test");//url Path
        bool ConnectionStatus = Convert.ToBoolean(content.Result);//This line takes very long before jumping to catch block
        if (ConnectionStatus)
        {
            return true;
        }
    }
    catch (Exception e)
    {
        return false;
    }
}
埃里克·B

https://msdn.microsoft.com/en-us/library/system.net.http.httpclient.timeout(v=vs.110).aspx

HttpClient有一个Timeout属性,默认为 100 秒。降低此值将导致请求超时并更快地抛出异常。

_client.Timeout = TimeSpan.FromSeconds(5);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

转换 Angular HttpClient 结果

来自分类Dev

Xamarin HttpClient请求超时

来自分类Dev

Apache HTTPClient超时随时

来自分类Dev

奇怪的HttpClient结果

来自分类Dev

apache httpclient 4.3不超时

来自分类Dev

Zend HttpClient更精细的超时?

来自分类Dev

将HttpClient转换为RestSharp

来自分类Dev

Windows.Web.Http.HttpClient超时选项

来自分类Dev

Apache HttpClient 3.1 套接字超时

来自分类Dev

无法使Polly超时策略覆盖HttpClient默认超时

来自分类Dev

是否可以读取 HTTPClient 发送的 XmlSerializer 的结果?

来自分类Dev

HttpClient.GetStringAsync 正在返回“结果”对象?

来自分类Dev

Angular:Http到HttpClient转换问题

来自分类Dev

将RestShapr RestRequest转换为本地HttpClient

来自分类Dev

将curl转换为httpclient post

来自分类Dev

交换标头中的Camel-http httpclient超时

来自分类Dev

Apache HttpClient 4.3-设置连接空闲超时

来自分类Dev

HttpClient请求成功,并定义了超时,但挂起时没有

来自分类Dev

在异步工作流中捕获HttpClient超时

来自分类Dev

HttpClient请求成功,并定义了超时,但挂起但没有

来自分类Dev

在异步工作流中捕获HttpClient超时

来自分类Dev

即使在设置 Timeout.Infinite 后,HttpClient 也会超时

来自分类Dev

WP8 HttpClient.PostAsync永远不会返回结果

来自分类Dev

Json.net从HTTPClient结果反序列化DateTime

来自分类Dev

WebAPI Request.CreateResponse(状态代码,消息)的HttpClient结果

来自分类Dev

WP8 HttpClient.PostAsync永远不会返回结果

来自分类Dev

Windows Phone 8 HttpClient Get方法返回奇怪的结果

来自分类Dev

将HttpClient响应转换为JsonObject时出错

来自分类Dev

Angular 4:将 Http 转换为 HttpClient,配置

Related 相关文章

热门标签

归档