別のサービスに対して既存の API を使用する必要がある ASP.NET MVC 4 アプリケーションがあります。ApiController がdataを返し、通常の Controller がviewsを返すことは明らかです。
Javascript 機能のために、外部 API に接続するための何らかの形式の RESTful API が必要ですが、(ビューをレンダリングする) アクションも外部 API を呼び出す必要があります。つまり、コントローラー アクションとJavaScript 呼び出し API の両方が、共通の外部 API を呼び出す必要があります。
私の質問は次のとおりです。私のアクションと JS API が共通のインターフェースで呼び出しを行うようにするには、どうすればこれを設計できますか?
これまでの私の2つのアイデア:
ApiController
エンティティごとに を作成します。次に、これらの ApiController が外部 API を呼び出します。次に、私の Javascipt はこれらの ApiController を呼び出すことができ、私のアクションで、必要に応じて各 ApiController のインスタンスを作成し、それらのメソッド (GET、POST、PUT など) を呼び出すことができます。- すべてのビジネス ロジックをモデル オブジェクトに入れ、外部 API を呼び出します。特定のメソッドを Javascript に公開するには、いくつかの HTTP エンドポイントを提供し、Javascript が呼び出すアクションの名前を渡します。これにより、Model メソッドが呼び出され、次に外部 API が呼び出されます。
これらのどちらかが他方よりも「正しく」聞こえますか? それとも、これは心配しすぎて「やりたいことは何でも」するもう 1 つのケースですか? ここでの目標は、Javascriptとコントローラー アクションがアクセスできる一般的な方法で、いくつかの外部 API を呼び出すことです。