У меня есть приложение для Android, которое использует службы WCF, вот фрагмент кода из AsyncTask
:
private HttpEntity<HashMap> request(){
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.add("Cookie", LocalData.Web.getCookie(this.context));
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJacksonHttpMessageConverter());
HttpEntity<HashMap> requestDataEntity = new HttpEntity<>(request, requestHeaders);
HttpEntity<HashMap> response = restTemplate.exchange(this.url, this.httpMethod, requestDataEntity, HashMap.class);
// HttpHeaders headers = response.getHeaders();
// LocalData.Web.storeCookie(headers, context);
return response;
}
@Override
protected HashMap doInBackground(Void... voids) {
try{
return request().getBody();
}
catch (Exception e){
Log.e("error", e.getMessage());
return null;
}
}
в основном он правильно подключается к этой службе, но иногда здесь возникает какое-то исключение, которое получает это сообщение:
Ошибка ввода-вывода: ошибка recvfrom: ECONNRESET (сброс соединения узлом); вложенным исключением является java.net.SocketException: ошибка recvfrom: ECONNRESET (сброс соединения узлом)
что может вызвать эту ошибку?
Примечание.
Долгое время все работало нормально, но теперь у меня часто возникает эта проблема. Это проблема с Android или я бы искал проблему на стороне WCF?