Как настроить приложение Web API, чтобы оно было доступно по сети?
Я могу подключиться к своему приложению Web API из браузера или из другого приложения (например, приложения Windows Forms), выполнив:
http://localhost:28642/api/inventoryitems/GetAll
... но как я могу сделать localhost доступным для других (в той же сети), чтобы они могли делать те же самые вызовы REST?
Это просто вопрос их подключения к моей машине, вот так:
http://platypus:28642/api/inventoryitems/GetAll
... и если да, что я должен сделать, чтобы сделать его доступным (если что-нибудь)?
В любом случае, я не хочу, чтобы мне постоянно приходилось запускать мое приложение Web API на моей машине, поэтому: как я могу настроить его так, чтобы оно работало 24/7 без необходимости запуска / присмотра за ребенком?
Будет ли веб-сайт Azure подходящим вариантом для этого?
ОБНОВИТЬ
Это может быть (основываясь на том, что я прочитал здесь), что изменение applicationhost.config из этого:
<site name="HandheldServer" id="20">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\HandheldServer\HandheldServer" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:28642:localhost" />
<binding protocol="http" bindingInformation="*:28642:platypus" />
<binding protocol="https" bindingInformation="*:44300:localhost" />
</bindings>
</site>
...к этому:
<site name="HandheldServer" id="20">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\HandheldServer\HandheldServer" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:28642:localhost" />
<binding protocol="http" bindingInformation="*:28642:platypus" />
<binding protocol="http" bindingInformation="*:28642:" />
<binding protocol="http" bindingInformation=":28642:" />
<binding protocol="https" bindingInformation="*:44300:localhost" />
</bindings>
</site>
... сделает его доступным (но мне нужно будет запустить его или IISExpress запустит его в фоновом режиме?)
Предположительно, первая запись уже может сделать ее доступной. Я не знаю, нужен ли префикс *, поэтому у меня есть запись как с так и без.
1 ответ
У вас есть выбор:
- купите Rasperberry Pi, чтобы вместо вашего компьютера работал независимый сервер / сервис
- купить VPS
- откройте порты брандмауэра на вашем роутере
- использовать свой смартфон (да, это возможно)
- измените свой файл hosts (windows, linux, mac)
чуда нет;)