我正在使用此示例在windows live平台上成功建立登录连接:
http://code.msdn.microsoft.com/messengerconnect
(oauth处理程序回调一个)
我从他们的api收到一个令牌和用户ID,但我似乎无法理解如何从这些信息中获取用户个人资料。
有谁知道怎么做?
MS网站上有一些例子,但它们都是C#或javascript,我必须用PHP来做。
检索令牌和cid后我尝试了这个,但是给我一个错误:
$url_string = 'http://apis.live.net/V4.1/cid-'.$user->getId().'/Profiles/';
echo("<br/>\n".$url_string);
$curl_session = curl_init($url_string);
// build HTTP header with authorization code
$curl_options = array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => array(
'Authorization: WRAP access_token=AuthToken="'.urlencode($_REQUEST['stoken']).'"',
'Accept: application/json'
)
);
// setup options for curl transfer
curl_setopt_array($curl_session, $curl_options);
// execute session and get response
$curl_response = curl_exec($curl_session);
print $curl_response;
curl_close($curl_session);
错误是这样的:
{“Title”:“ErrorResource”,“Code”:1062,“Message”:“请求不包含有效的PUID。”}
编辑:
通过从授权中删除= AuthToken来解决问题,它工作了!
谢谢,
乔
答案 0 :(得分:0)
是!
让它在数小时后尝试从ms¬¬
尝试大量不同的样本问题是授权:WRAP access_token = AuthToken =
刚删除了AuthToken =并且有效!
所以它现在是这样的:
'授权:WRAP access_token =“'。$ wrapper-&gt; getReturnedParameter('wrap_access_token')。'”''