Saltar al contenido

Aplicación Asp.Net Core Web API: ¿cómo cambiar la dirección de escucha?

Solución:

Estoy usando .NETCore 2.1 anterior, así que no he podido probarlo yo mismo, pero si creo que https://www.billbogaiv.com/posts/setting-aspnet-host-address-in-net-core -2, agregando .UseUrls(urls: "http://*:5000") podría estar indicando a Kestrel que escuche el puerto 5000 y no solo en localhost, por lo que debería funcionar también en un servidor remoto.

Otra posible solución, UseKestrel(..) https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-2.1&tabs=aspnetcore2x usando IPAddress.Any en lugar de Loopback.

Esto está configurado por la configuración del host de las URL del servidor

Indica las direcciones IP o direcciones de host con puertos y protocolos en los que el servidor debe escuchar las solicitudes.
Llave: urls
Escribe: cuerda
Defecto: http: // localhost: 5000
Establecer usando: UseUrls
Variable de entorno: ASPNETCORE_URLS

Establezca una lista de prefijos de URL separados por punto y coma (;) a los que el servidor debe responder.


También es posible establecer URL usando argumentos de línea de comando. Por ejemplo:

dotnet ejecutar –urls = http: //0.0.0.0: 5001

pero esto no funciona de manera inmediata para las versiones anteriores de ASP.NET Core (depende de si esta corrección se aplicó o no a la versión usada).

Una solución para las versiones anteriores basada en el hecho de que siempre puede establecer la configuración del host directamente a través de .UseConfiguration método:

var config = new ConfigurationBuilder().AddCommandLine(args).Build();

return WebHost.CreateDefaultBuilder(args)
        .UseConfiguration(config)

Tenga en cuenta que se puede usar la misma idea para leer el valor de configuración de cualquier otra fuente de configuración, como un archivo de configuración, por ejemplo.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *