0

我使用 DotNetOpenAuth 并且当我打电话时:

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

我得到了上面的错误......我正在使用我自己的 OpenID 提供程序,我刚刚在 localhost 中运行。有谁知道那可能是什么?内部异常说序列不包含任何项目或类似的东西。

我在想也许我将我的 RP 指向了我运行本地主机的错误位置。将 RP 指向 XRDS 文件是否正确?

谢谢尼尔

4

1 回答 1

1

通常userSuppliedIdentifier应该是 OpenID 提供者网站的 URL——而不是直接在 XRDS 文件中。提供者的主页应该检测到对 XRDS 文档的调用并做出适当的响应。OpenIdProvider[Mvc] 示例演示了这一点。

由于您在 localhost 上托管,因此很可能出现的问题是 RP 拒绝连接到 localhost 端点(默认情况下是安全的,因为当您在生产中时,这并不是一个真正有效的场景)。因此,当您在本地开发时,您必须在 web.config 文件中将 localhost 列入白名单。请参阅 OpenIdRelyingParty[WebForms/Mvc] 示例的 web.config 文件了解如何执行此操作。

于 2013-02-05T21:12:17.987 回答