2017-01-13 11 views
0

私はWeb API 2のマイクロソフトのチュートリアルに続いていました Web API 2 tutorialWeb APIはホストされずにどのように応答しますか?

私はそれを実行しようとしていて、403.14エラーが発生していました。いくつかの調査の後、私はあなたがそれを構築し、ここに述べたようにブラウザから関数を呼び出さなければならないことを知りました: Answer to Dealing with 403.14 error

Web APIが呼び出される必要があるという印象を受けました。私が実行していない場合、ブラウザはその関数をどのように呼び出すことができますか?

答えて

1

新しいWeb APIプロジェクトを作成すると、Visual Studioは新しいASP.NETアプリケーションを作成し、Web API固有のテンプレートを追加します。 Visual Studioのビルトイン開発サーバー(IIS Expressとも呼ばれます)でASP.NETアプリケーションをホストできます。したがって、F5を押すと、基本的にこのwebseverが起動し、アプリケーションをホストし、ポート番号をリッスンします。

あなたは、Windowsタスクバーで実行している開発者のサーバーのアイコンを見ることができます:

enter image description here

+0

それはF5上に構築されませんが、それはことだが、あなたがそれを構築する場合は、何らかの理由ではいIISはそれを実行せずに、それをホストします。 – MilesMorales

+0

この場合、IISでホストされていて、IIS Expressでホストされていない可能性があります。ホスティングプロパティを含むプロジェクト設定 - Webタブを見てください。 –

+0

IIS Expressを使用しています。なぜ私はまだその機能を呼び出すことができますが、私はアプリケーションを実行していないときに私は思っています。 – MilesMorales

0

のWeb APIをホストする必要があり、ダーリンはすでに言ったように、それは、IIS Expressでホストされている、あなたが実行した瞬間をProductsAppプロジェクトここでIISExpressについて詳しく読むことができます[1]。

しかし、プロジェクトを実行すると、ブラウザはデフォルトのパス(マシンに別のポートを持つhttp://localhost:47503/の場合があります)を開きますが、これはマップされません。

Visual Studioでアプリケーションを実行してから、ブラウザに開いているデフォルトのパスにプロジェクトの実際のパス(例:/ api/products)を追加します。結果として得られるURLはhttp://localhost:47503/api/productsのようになります。これはあなたが言及した例でも述べられていますが、おそらく十分ではないかもしれません。

は、[1] https://www.iis.net/learn/extensions/introduction-to-iis-express/iis-express-overview

[2] https://forums.asp.net/t/1961303.aspx?HTTP%20Error%20403%2014%20Forbidden%20

+0

これはjsonファイルを返しますが、なぜアプリケーションを実行していない場合でも、私の主な質問だった機能を呼び出すことができます。 – MilesMorales

関連する問題