0

この例を使用して、Windows Live プラットフォームでログイン接続を成功させています:
http://code.msdn.microsoft.com/messengerconnect (oauth ハンドラー コールバック 1)

API からトークンとユーザー ID を受け取りましたが、これらの情報からユーザー プロファイルを取得する方法がわかりません。
誰もこれを行う方法を知っていますか?
MS Web サイトに例がありますが、それらはすべて 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":"Request does not contain a valid PUID."}

ユーザー情報を取得するのを手伝ってもらえますか?

編集:
認証から =AuthToken を削除することで問題を解決し、機能しました!

ありがとう、
ジョー

4

1 に答える 1

0

はい!

msからのさまざまなサンプルをたくさん試して数時間後に動作しました

問題は承認でした: WRAP access_token=AuthToken=

AuthToken= を削除しただけでうまくいきました!


'Authorization: WRAP access_token="'.$wrapper->getReturnedParameter('wrap_access_token').'"' のようになりました。

于 2010-12-25T00:14:01.797 に答える