Веб-хост Web API - привязка ко всем сетевым интерфейсам
Как сделать привязку хоста веб-API на всех сетевых интерфейсах?
У меня есть код ниже. К сожалению, он связывается только с localhost. Поэтому доступ к этому серверу из-за локального хоста не выполняется.
var baseAddress = string.Format("http://localhost:9000/");
using (WebApp.Start<Startup> (baseAddress))
{
Console.WriteLine("Server started");
Thread.Sleep(1000000);
}
Ответы
Ответ 1
Просто измените базовый адрес, как этот
var baseAddress = string.Format("http://*:9000/");
using (WebApp.Start<Startup> (baseAddress))
{
Console.WriteLine("Server started");
Thread.Sleep(1000000);
}
И он должен корректно связываться со всеми интерфейсами.
Ответ 2
свяжите его, используя: -
var baseAddress = string.Format("http://localhost:+:9000/");
Если вы получаете исключения для доступа, пожалуйста, НЕ запустите Visual Studio в качестве администратора. Вместо этого добавьте резервирование URL. Запустите окно командной консоли как администратор и выполните:
netsh
netsh> http add urlacl url="http://+:9000/" sddl=D:(A;;GX;;;S-1-1-0)
SDDL переводит "всех пользователей" из вашего текущего домена/машины.