すべてのリクエストで「Api-Key」を必要とし、すべての認証済みリクエストでユーザーの「AccessToken」を必要とする API があります。現在、ユーザーがログインすると、「AccessToken」が返され、それ以降の各リクエストで送信されます。
私の質問は、この API を使用する現在の Web サイトのワークフローに関するものです。注 - Web サイトと Api は異なるソリューション/アプリ ドメインにあり、現在は同じボックスにありますが、後でそうなるとは思えません。
現在、Web サイトは MVC コントローラー/アクション メソッドを介して Api にすべての要求を行います。最初は、クライアント側のすべてのリクエストを実行するために大量の jquery を作成する必要なく、これが起動して実行する最も簡単な方法だと思いました。さらに、サーバーはその Api-Key を認識し、AccessToken が保存されているフォーム認証を使用します。
Web サーバーをスキップして Jquery から WebApi に直接移行すれば高速になることは誰もが知っていると思いますが、このプロセスの最初のレビューで、認証に関する問題に遭遇しました。
最後に質問:)
before send を ajax で使用してヘッダーを変更できることはわかっていますが、アクセストークンと Web サイトの API キーをクライアント側に安全に送信してこれを送信するにはどうすればよいでしょうか?
間違っている場合はお知らせください。ただし、Razor を使用して ViewData / ViewBag を使用し、それをビュー内の JavaScript に変換すると、AccessToken と Api-Key がそこに座って、ビューソースを実行するときに世界が確認できるようになりますか?
現時点の
Jquery --> MVC Action --> WebApi
もっと早く
Jquery --> WebApi
そこにあるほとんどのApiラッパーがMVCコントローラー/アクション内から使用されていることに気付きました。したがって、実際には、それを行う方法が正しい方法であると考えていますか?
乾杯