2013-02-05 35 views
0

林,當我打電話:DotNetOpenAuth樣品OpenID的錯誤:沒有OpenID端點發現使用DotNetOpenAuth

this.openIdRelyingParty.CreateRequest(userSuppliedIdentifier, realm, returnToUrl); 

我得到上述錯誤......我用我剛纔已經在本地主機上運行自己的OpenID提供商。有沒有人有任何想法可能是什麼?內部異常說序列不包含任何項目或類似的東西。

我在想也許我是指着我的RP到錯誤的地方,我有我的本地主機運行。將RP指向XRDS文件是否正確?

感謝 尼爾

回答

1

userSuppliedIdentifier通常應該是OpenID提供網站的URL - 不直接在XRDS文件。提供商的主頁應檢測到XRDS文檔的調用並作出適當的響應。 OpenIdProvider [Mvc]示例演示了這一點。

由於您在本地主機上託管,很可能出現的問題是RP拒絕連接到本地主機端點(默認安全,因爲在生產時這不是真正有效的方案)。所以當你在本地開發時,你必須在web.config文件中將localhost列入白名單。有關如何執行此操作,請參閱OpenIdRelyingParty [WebForms/Mvc]示例的web.config文件。

+0

嗨安德魯,並感謝您的答覆。我已經加入OpenIDProviderMVC作爲我的OP現在..但問題仍然存在。你知道什麼是實際的端點?我試過了,我認爲項目中的每個aspx文件:(..白名單是否只需要設置OP?還是必須在RP上設置? –

+0

白名單需要在RP的web上.config文件,OP不需要它(除非你想讓RP發現工作),你在RP中輸入的URL只是OP的根URL(http:// localhost:port /託管OP站點)。 –

+0

我很感謝Andrew的建議!我沒有RP和OP之間的直接鏈接,我有一個與OpenID Provider進行通信的中間STS,所以我應該在RP白名單或STS白名單上有白名單(我沒有在STS白名單) –

相關問題