从Windows Live ID查询中检索JSON结果

时间:2012-05-09 20:16:19

标签: perl oauth-2.0 live windows-live-id

我无法从Live ID API调用中检索整个JSON。

我正在使用Windows Live ID通过OAuth2流程来获取 个人资料信息(以及一些相关项目,如电话号码和首选电子邮件)。 我正在使用perl & Net::OAuth2.

OAuth2部分似乎工作正常;我可以获得访问令牌。 我现在要做的就是转过身来检索个人资料信息 这个认证/授权过程的重点。

如果我只是将URL插回浏览器 https://apis.live.net/v5.0/me?access_token=EwA .... 我得到了我想要的东西,看起来像JSON:

{
   "id": "dd62296f10db01bf", 
   "name": "Michael Helm", 
 ....

   "locale": "en_US", 
   "updated_time": "2012-05-03T01:02:59+0000"
}

当我使用一些perl模块来构建url字符串时,请创建 请求,&检索( 使用LWP :: UserAgent; 使用HTTP :: Request :: Common; )

由于客户端>请求返回的内容看起来像是最后一个 上面的JSON的一部分,具有updated_time的部分,加上一些标点符号。

我错过了什么?获取整个对象需要做什么?

此技术之前有效(但有几个OAuth 1提供商)。 我并不熟悉Microsoft& Windows Live ID但是进程 直到现在似乎很简单。

1 个答案:

答案 0 :(得分:0)

如上所述,JSON模块可以读取&解析整个内容,即使Dumper无法打印它。因此,OAuth 2处理或Windows Live API没有问题。