2015-12-16 102 views
0

我有一個非常簡單的ASP MVC應用程序,基本認證用戶並呈現視圖。我有一個單獨的WebApi項目,其中包含所有的邏輯。我需要的是從MVC使用JS呈現的視圖調用API,但這些API調用必須經過身份驗證。如何使用asp mvc和javascript實現web api令牌授權

根據文檔,我應該通過發送用戶名和密碼從API獲取一個令牌,然後聯繫通過接收令牌的api端點以允許訪問資源。

將用戶名和密碼從mvc傳遞到視圖看起來不對,以便視圖可以聯繫api最終獲得令牌。

這樣做的恰當方法是什麼?我應該直接從MVC(服務器端)向API請求一個令牌,當用戶登錄時,將該令牌保存在某個地方(cookie,會話)並使其可用於視圖,以便我可以使用JS調用api同樣的道理?

回答

0

我不完全確定你要做什麼,但你應該先看看這篇文章OAuth 2 Simplified: Browser-Based Apps

現在,根據您的建議,您還可以將用戶名和密碼發佈到您的MVC應用程序,讓它與您的授權服務器(可能是您的API)通話以獲取訪問令牌並將其返回到隱藏字段中的視圖,或一個cookie ...所以你的JavaScript可以將它添加到請求。

希望它有幫助!

+0

這篇文章真的很清楚,謝謝!我會詳細介紹它,以便更深入地瞭解這個問題。至少,它證實了我的懷疑,即有更安全的方式來回發送認證信息。會讓你更新。 – Hernan