最近,我注意到当将生成的身份存储在我的数据库中时,Google 有时会为同一用户返回不同的身份,从而导致单个用户的两个数据库条目。
经过一番研究,我发现 Google 使用 $openid->realm 和用户名来创建身份。默认情况下,领域成为您网站的 URL。使用 LightOpenID,我应该将 $openid->realm 设置为什么以使生成的 Google 身份保持一致,以便我可以将它们存储在我的数据库中?我可以将“领域”设置为我喜欢的任何内容吗?还是必须与我的 URL 相关?
最近,我注意到当将生成的身份存储在我的数据库中时,Google 有时会为同一用户返回不同的身份,从而导致单个用户的两个数据库条目。
经过一番研究,我发现 Google 使用 $openid->realm 和用户名来创建身份。默认情况下,领域成为您网站的 URL。使用 LightOpenID,我应该将 $openid->realm 设置为什么以使生成的 Google 身份保持一致,以便我可以将它们存储在我的数据库中?我可以将“领域”设置为我喜欢的任何内容吗?还是必须与我的 URL 相关?
我查看了规范:
http://openid.net/specs/openid-authentication-2_0.html#realms
经过反复试验,我最终使用 http://*.mydomain.com 作为领域,我的问题得到了解决。谷歌总是会返回相同的身份。最初我只是尝试 *.mydomain.com 并且这会产生错误。