我在使用 ASP.NET Core 和 IIS(不是 IIS Express)中托管的应用程序时遇到问题...
这是我的配置:
启动:
services.addHttpClient()
页码:
private readonly IHttpClientFactory _clientFactory;
public testModel(IHttpClientFactory clientFactory)
{
_clientFactory = clientFactory;
}
public async void OnGet()
{
var client = _clientFactory.CreateClient();
client.BaseAddress = new Uri("http://localhost:37199/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
// GET Method
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, "apiprueba/test");
var response = await client.SendAsync(request);
}
问题:当我执行页面时,我从未得到页面的响应(测试)。这只发生在 IIS 上,而不会发生在 IIS Express 上。可能是什么问题?
更新: 新测试..使用简单的 asp core 控制台没有响应。 代码
static async System.Threading.Tasks.Task Main(string[] args)
{
Console.WriteLine("Hello World!");
var client = new HttpClient();
client.BaseAddress = new Uri("http://127.0.0.1:88/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
//GET Method
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, "api/mensaje");
client.Timeout = TimeSpan.FromSeconds(30);
var response = await client.SendAsync(request).ConfigureAwait(false);
Console.WriteLine(response.ToString());
Console.WriteLine("Finished");
}
含义: 结果: 当地的马奎因: 5 秒后显示错误。 服务器: 你好世界! _ ...10 分钟后代码仍在运行..没有答案错误或完成该过程..
看来服务器有问题...不知道为什么
更新:检查服务器后..WinHttp服务已停止...如果我尝试手动启动,则会出现错误..重新启动服务器解决了问题..服务正常启动并且来自应用程序的请求正确..
WinHttp 服务已停止..无法手动运行..重新启动服务器后,服务正确启动,所有程序和测试均成功。