簡體   English   中英

我如何在沒有登錄表單的情況下將摘要身份驗證與asp.net Web API和angular js一起使用?

[英]How can I use digest auth with asp.net web api and angular js without a login form?

我正在構建一個單頁應用程序,供用戶通過WPF應用程序單獨使用。 永遠不要通過傳統的瀏覽器公開。

本質上,用戶將已經通過客戶端WPF應用程序進行了身份驗證。

WPF應用程序利用現有的Web API來使用數據並驗證用戶身份。

登錄到WPF應用程序后,用戶可以導航到將通過WPF瀏覽器控件或類似控件加載我的單頁應用程序的部分。

SPA將使用AngularJS和與wpf應用程序相同的Web API。

我想在初始頁面加載時對SPA部分的用戶進行身份驗證,並保護從SPA發出的所有API請求。 由於angularjs應用程序需要訪問API,因此我需要一種將用戶憑據獲取到應用程序的Web部分的方法。

我可以在初始頁面加載時使用摘要身份驗證,並以某種方式將這些憑據存儲在頁面上以供angularjs使用嗎? 如果是這樣,在asp.net中進行設置的過程是什么?

我對Windows開發人員不熟悉,但是我認為我也有類似的設置:

  1. 首先,您對用戶進行身份驗證。
  2. 然后,在服務器端生成AngularJS應用的主頁,並在ng-init中包含一個對象,該對象包含先前的身份驗證結果。 我的示例(用於服務器端生成的語法是ejs):

      <body ng-init='{ user = { id : "<%= user._id %>", email : "<%= user.local.email %>", name : "<%= user.local.first_name + " " + user.local.last_name %>", password : "<%= user.local.password %>", apiKey : "<%= user.local.apiKey %>", };'> 
  3. 在其余的angularJS應用中,您將可以使用$ rootScope.user.apiKey或$ scope.user.apiKey

我希望這有幫助。 祝您的代碼好運。 G

使用ObjectForScripting通過WPF應用程序(可以進行經過身份驗證的調用)從javascript向服務器發出請求 此功能允許托管的JS調出.NET代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM