帶有asp.net mvc的dotnetopenauth證明太令人沮喪而無法使用
我一直在非常努力地在 asp.net mvc 中實現一個好的開放 id 解決方案——而我轉向的任何地方都是絕對的死胡同。DotNetOpenAuth 太大了,到目前為止,我什至無法讓它最簡單、基本、絕對的干脆實現工作。
NerdDinner 有一個很有前途的實現,但不可能追踪所有相關文件和腳本。不幸的是,DotNetOpenAuth 網站實際上也沒有任何有用的資訊。
是否有人知道一種簡單的方法來實現這一點,它實際上解釋並詳細說明了它是如何與某種選擇器一起工作的?它被談論了很多,但我發現的所有東西都很難使用,以至於我的整個團隊甚至都無法考慮它。
我們希望以類似於堆棧溢出的方式來實現它——使用一個選擇器,如果需要,它會彈出一個登錄頁面。我意識到為此需要編寫大量程式碼,但一切都只是歡呼和讚美 dotnetopenauth,並沒有真正教它。甚至範例項目也無法打開或編譯。
它看起來像一個很棒的圖書館——但它真的只是不適合我。
編輯:現在我被指出了正確的起點,這變得更有意義了。如果你剪掉所有多餘的部分並確切地知道基礎在哪裡,那就不會那麼令人沮喪了。
我猜您可能從新的 DNOA 項目模板開始,其中包含大量程式碼和相當複雜的數據庫方案,但其中大部分僅對 OAuth 和 OpenID 提供者是必需的,而不是依賴方。當您嘗試弄清楚如何將其集成到現有解決方案中時,這可能會有點讓人不知所措。
我建議不要從項目模板開始,而是從範例項目開始,您可以在 Samples/OpenIdRelyingPartyMvc 文件夾中找到。為了盡量減少這種情況,您需要一個非常基本的場景(例如,只是為了能夠顯示剛剛登錄的使用者的 OpenID URL)
Authenticate在UserController. 這只是幾行。就我而言,在快速開始基於這個範例之後,我深入探勘了項目模板生成的程式碼,學習並應用了一些有用的改進,但仍然非常輕量級和簡單,到目前為止對我來說效果很好.
順便說一句:我認為 DNOA 不僅設計完美且程式碼記錄良好,而且它也是我使用過的最受支持的開源庫之一。我打賭安德魯會在不到 24 小時內在這裡發表評論;-)