Xamarin.ios Xamarin iOS RestSharp请求每X个请求挂起一次
我在向我的服务器https/ssl发送POST请求时遇到一些问题 问题是,每个X请求,一个请求只是挂起,似乎没有发送到服务器,至少在我使用fiddler嗅探iPhone后是这样想的 有时几分钟后我会收到这样的信息: 获取响应流ReadDone1时出错:ReceiveFailure 和innerException堆栈跟踪: 位于///Library/Frameworks/Xamarin.iOS.framework/Versions/8.4.0.43/src/mono/mcs/class/System/System.Net.Sockets/NetworkStream.cs:322位于mono.Security.Protocol.Tls.SslStreamBase.InternalReadCallback IAsyncResult结果[0x0002c]中的System.Net.Sockets/NetworkStream.cs:322在///Library/Frameworks/Xamarin.iOS.framework/Versions/8.4.0.43/src/mono/mcs/class/mono.Security/mono.Security.Protocol.Tls/SslStreamBase.cs:659中 有没有人遇到过这样的问题,或者知道如何解决 这是我正在使用的代码:Xamarin.ios Xamarin iOS RestSharp请求每X个请求挂起一次,xamarin.ios,xamarin,restsharp,Xamarin.ios,Xamarin,Restsharp,我在向我的服务器https/ssl发送POST请求时遇到一些问题 问题是,每个X请求,一个请求只是挂起,似乎没有发送到服务器,至少在我使用fiddler嗅探iPhone后是这样想的 有时几分钟后我会收到这样的信息: 获取响应流ReadDone1时出错:ReceiveFailure 和innerException堆栈跟踪: 位于///Library/Frameworks/Xamarin.iOS.framework/Versions/8.4.0.43/src/mono/mcs/class/Syste
ThreadPool.QueueUserWorkItem (delegate {
if (Utilities.IsOnline ()) {
refreshData ();
}
});
private void refreshData() {
try {
baseRequest = new BaseRequest ();
baseRequest.id = "userid";
string BaseUrl = "my server url";
client = new RestClient ();
client.BaseUrl = BaseUrl;
client.Timeout = 5000;
request = new RestRequest (Method.POST);
request.RequestFormat = DataFormat.Json;
request.Resource = "GetClientData";
request.AddBody (baseRequest);
serviceResponse = new ServiceResponse ();
client.ExecuteAsync (request, response => {
if (response.ErrorException != null) {
serviceResponse.payload = string.Empty;
serviceResponse.statusCode = StatusCode.Error;
} else {
//parse data
}
});
} catch (Exception ex) {
}
}
你的街区没有排好。client.ExecuteAsync的右括号实际上位于外部try块的右大括号之后,这是错误的。我会检查一下,我复制了部分代码,可能遗漏了seomthing。代码本身很好,大部分时间都能正常工作。仍然会出错吗?我想知道这是否只是你的服务器暂时的网络连接问题。是的,仍然会每隔几次请求就收到一次错误信息,并且还会不时收到iPhone用户的反馈。