C#Can';t从其他设备连接到自托管web api
我有一个C#自托管web api(控制台应用程序.NET框架)。我可以从localhost检查api,但无法从其他设备(如电话或其他桌面)连接到web api。我尝试了192.168.X.X:PORT,但没有成功 我注意到,如果您关闭防火墙,那么当您尝试从另一台设备向API发出请求时,请求将失败,并出现错误: “请求错误-主机名无效。 HTTP错误400。请求主机名无效。“C#Can';t从其他设备连接到自托管web api,c#,.net,webserver,C#,.net,Webserver,我有一个C#自托管web api(控制台应用程序.NET框架)。我可以从localhost检查api,但无法从其他设备(如电话或其他桌面)连接到web api。我尝试了192.168.X.X:PORT,但没有成功 我注意到,如果您关闭防火墙,那么当您尝试从另一台设备向API发出请求时,请求将失败,并出现错误: “请求错误-主机名无效。 HTTP错误400。请求主机名无效。“ 如果启用防火墙,则请求将花费很长很长时间。尝试从防火墙设置或禁用它执行新查询 在sql servce clint的serv
如果启用防火墙,则请求将花费很长很长时间。尝试从防火墙设置或禁用它执行新查询 在sql servce clint的serveces设置中插入端口1433,启用它可能会对您有所帮助 问题是,默认情况下,绑定只针对
localhost:PORT
。如果您绑定到0.0.0.0:PORT
(并允许防火墙上的端口),您将能够从另一台计算机进行访问
您可以通过UseUrls()
您是否尝试过禁用windows防火墙并重试?是的,我尝试过。我还检查了SpringJava的远程访问,结果很成功。谢谢!我的问题是防火墙和主机绑定?所以我将localhost改为'*'。我不记得'*'是否真的有效。此处我的应用程序配置为“0.0.0.0”。很高兴知道是这样:)
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
webBuilder.UseUrls("http://0.0.0.0:5000", "https://0.0.0.0:5001");
});
}
$> ./myApp --urls=http://0.0.0.0:5000