我使用DotNetOpenAuth,当我打电话时:
this.openIdRelyingParty.CreateRequest(userSuppliedIdentifier, realm, returnToUrl);
我收到上面的错误...我正在使用我自己的OpenID提供程序,我刚刚在localhost中运行。有谁知道那可能是什么?内部异常表示序列不包含任何项目或类似内容。
我在想,也许我正在将我的RP指向我运行本地主机的错误位置。将RP指向XRDS文件是否正确?
由于 尼尔
答案 0 :(得分:1)
userSuppliedIdentifier
通常应该是OpenID提供商网站的URL,而不是直接在XRDS文件中。提供者的主页应检测对XRDS文档的调用并进行适当的响应。 OpenIdProvider [Mvc]样本证明了这一点。
由于您在localhost上托管,很可能的问题是RP拒绝连接到localhost端点(默认情况下为安全性,因为当您正在生产时,这不是真正有效的方案)。因此,当您在本地开发时,必须在web.config文件中将localhost列入白名单。有关如何执行此操作,请参阅OpenIdRelyingParty [WebForms / Mvc]示例的web.config文件。