Hej, mierzę się z problemem, na SO na razie cisza, może tutaj ktoś będzie w stanie mi pomóc. A mianowicie, po wrzuceniu ASP.NET Core 3.1 Web API na serwer ISS aplikacja rzuca mi wyjątkiem:
One or more errors occured. A connection attempt failed because the
connected party did not properly respond after a period of time, or
established connection failed because connected host has failed to
respond.
Kiedy analizowałem podobne przypadki na SO, w większości wyjątek był powodowany przez złą konfigurację PROXY. Tutaj nie używam proxy. Także na mojej lokalnej maszynie wszystko działało bez zarzutu. Problem się pojawił po deployowaniu Web API na serwer, I nie jestem pewien co może go powodować.
Podejrzenia:
- źle skonfigurowany
HttpClient
- niezainstalowany
Core 3.1
na serwerze (czekam na info od nich)
W moich logach jest napisane, że wyjątek jest rzucany przez metodę GetHtmlDocument w:
public class HttpClientProvider : IHttpClientProvider
{
private static HttpClient _httpClient;
public string GetHtmlDocument(string url) //tutaj się pojawia wyjątek
{
string html = string.Empty;
using (HttpResponseMessage response = GetHttpClient().GetAsync(new Uri(url, UriKind.Absolute)).Result)
{
using (HttpContent content = response.Content)
{
html = content.ReadAsStringAsync().Result;
}
}
return html;
}
private HttpClient GetHttpClient()
{
if (_httpClient != null)
{
return _httpClient;
}
return CreateNewHttpClient();
}
private static HttpClient CreateNewHttpClient()
{
HttpClientHandler handler = new HttpClientHandler();
_httpClient = new HttpClient(handler);
_httpClient.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3703.0 Safari/537.36");
return _httpClient;
}
}
Może będziecie mieli jakieś pomysły?