マーキングする前にそれを読んでください。セルフホスト(コンソールを使用)を使用することはできませんasp .net 5 web api over LAN
私はlocalhost:5000ポートを介してデフォルトのテンプレートweb apiをホストするVisual Studio 2015のシンプルなWebホスティングオプションを使用しています。
私はIISエクスプレスを使用していないことに注意してください、IISホスティングのための多くの質問があります。
私は単にhttp://localhost:5000/api/valuesを使用してそれらを消費することができます。しかし、localhostではなく適切なIPを使って、LAN上の別のシステムからこのapiを消費しようとすると、接続できず、URLへの接続エラーが表示されます。
あなたは簡単にこれを再現しようとすることができます:解決策を実行しながら、 "IIS Expressの" の "ウェブ" オプションinspiteを選択してVisual Studioの2015年
- 。これは、ポート上でコンソールを使用してASP .NETウェブAPIは、5000
- は今は打つことで、Web APIを消費することができます。しかしhttp://localhost:5000/api/values
- を私が(IPを適切するローカルホストを変更するLANを介して別のシステムから同じことをしようとした場合)、私は接続できません。
- また、LAN経由で別のシステムから自分のシステムにpingしようとすると、適切な応答が得られます。
ご協力いただければ幸いです。
すべてのアクセスを拒否しているようですが、 'localhost'からです。アプリを適切に公開して起動するとどうなりますか?私はそれが採用されたときにこのように振る舞いません。あなたが望むように振る舞うようにするには、いくつかの設定スイッチが必要です。(つまり、localhost以外の誰もがアクセスを拒否しないようにしてください) –
IISを使ってホストし、LAN経由でリモートコンピュータからアクセスしようとすると、それを働かせてください。この場合、「HTTP Error 400。要求ホスト名が無効です」というメッセージが表示されます。 – Randeep
そのHTTPリクエストの 'Host:...'フィールドの内容が間違っている可能性があります。 'localhost'または' 'に設定してみてください。つまり、あなたのウェブアプリケーションを採用/公開すると、それらのアクセスできない問題はとにかく進むはずです。 –