1

asp.net mvc4からの新しいWebAPIをテストしていますが、既存のasp.netmvc3からの現在のアクションコントローラー呼び出しに比べて多くの利点は見られません。

mvc 3のアクションコントローラーは、WebAPIとほとんど同じ方法でjsonを返すことができます。

WebAPIに関して2つの質問があります。

  1. 標準のアクションコントローラーjsonresultsではなくWebAPIをいつ使用する必要がありますか?
  2. さまざまなプレートフォームからのアクセスを許可して、Web APIを保護するにはどうすればよいですか(モバイルアプリを承認し、他のWebサイトを承認します)?

ありがとう

4

1 に答える 1

9

あなたはリンゴとオレンジを比較しています。Web Apiフレームワークは、WCFまたはその他のASP.Netサービスベースのテクノロジの実行可能な代替として開発されました。Web Apiフレームワークは、MVCの代わりになることを意図したものではありません。あなたの質問に答えるために

  1. APIを公開していない場合、またはサービスが必要な環境(たとえば、モバイルやさまざまなOSをサポートするSOA)で作業していない場合は、MVCコントローラーからの標準アクションコントローラーjsonの結果を使用できます。実際、モバイルデバイスやさまざまなOSで「標準」のMVCコントローラーJSON結果を使用できない理由はありませんが、Web APIは、コンテンツネゴシエーションや、SOAではるかに役立つHTTP動詞処理などの追加の便利な機能を公開しました。環境。
  2. 同じように、承認アクションフィルターの拡張または完全にオーダーメイドのアクションフィルターのいずれかのカスタムアクションフィルターを使用して、MVCアプリケーションを保護できます。フィルタ内で、IPアドレスのホワイトリストを簡単に確認したり、現在のHttpリクエストのユーザーエージェントを確認したりできます。
于 2012-09-30T22:54:42.077 に答える