我使用Light-OpenID for PHP来验证和检索数据。检索Steam账户的OpenID数据,返回null?
对于我使用http://steamcommunity.com/openid/我的OpenID提供商的网址,如记录here -
蒸汽OpenID提供蒸汽可以作为一个OpenID提供商采取行动。这允许您的应用程序 验证用户的SteamID,而无需 他们在您的网站上输入他们的Steam用户名或密码(该 将违反API使用条款。)只需下载适用于您的语言和平台的OpenID 库的选择,并使用 http://steamcommunity.com/openid作为提供者。返回的声明 ID将包含用户的64位SteamID。声明ID的格式是: http://steamcommunity.com/openid/id/
我指定我的要求,我请求对这些数据阵列 -
$openid->required = array(
'namePerson',
'namePerson/first',
'namePerson/last',
'namePerson/friendly',
'contact/email',
'email');
我已经确定我的代码工作,已经与其他供应商进行了测试如谷歌和雅虎。
我尝试使用Steam进行登录,我已通过身份验证,但是当我想要使用$openid->getAttributes();
检索有关用户的数据时,数组将返回空。
我已经调查了更多,它似乎Steam也通过其Web API using GetPlayerSummaries服务于数据。我想我可以使用来自OpenID帐户授权的64BIT Steam ID来请求数据,但这需要一个API密钥,并在PHP中解析数据。
有没有办法使用OpenID请求这些数据?或者我必须通过Steam的API手动解析所有内容?