如果我使用了ClaimedIdentifier是使用dotNetOpenId获取FriendlyIdentifierForDisplay的方法吗?
由于
答案 0 :(得分:6)
没有。 FriendlyIdentifierForDisplay 有时可以从ClaimedIdentifier派生。例如,声称的标识符“http://blog.nerdbank.net/”成为友好标识符“blog.nerdbank.net”。但是如果用户输入“= arnott”(一个i-name)作为其标识符,则声明的id将成为一个i-number(如=!9B72.7DD1.50A9.5CCD)。在身份验证之后,DotNetOpenId仍然可以方便地使用用户提供的标识符,因此可以将友好ID设置为“= arnott”。但是,如果任意声称的id = = 9B72.7DD1.50A9.5CCD,则无法将其反转为= arnott。
因此,最好在数据库中存储Claimed Id和FriendlyIdentifierForDisplay,以便您可以在该用户登录后的其他时间显示它。
只需确定 永远不会使用FriendlyIdentiferForDisplay来查找您的用户。它应仅用于显示目的(例如,您使用其声明的ID查找用户,然后在网页上显示用户的“别名”。)
如果您只拥有声明的ID,则可以通过从前面修剪方案,以及尾随斜杠和任何#fragment来尽力模拟FriendlyIdentifierForDisplay行为。这基本上是URL标识符的算法。