我正在尝试获取 .NET Core 3.1 工作人员服务await client.GetAsync中网站的状态仅挂在主机的 ERR_CONNECTION_REFUSED 上
程序.cs
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.UseWindowsService()
.ConfigureServices((hostContext, services) =>
{
services.AddHostedService<Worker>();
services.AddHttpClient();
});
工人构造函数
public Worker(ILogger<Worker> logger, IConfiguration configuration, IHttpClientFactory clientFactory)
{
_logger = logger;
_configuration = configuration;
_clientFactory = clientFactory;
}
稍后在 ExecuteAsync 方法中的 worker 中。
var client = _clientFactory.CreateClient();
var Siteresult = await client.GetAsync(_siteAdress);
来自服务器的 ERR_CONNECTION_REFUSED 是我们可以让这个失败的唯一方法。工作人员没有恢复,我们通过关闭 IIS 中的站点来复制这一点(当我们关闭应用程序池时,我们会得到一个有用的 503 并且运行良好)我们在 chrome 中浏览到该站点并获得 ERR_CONNECTION_REFUSED 但工作人员只是挂起。