0
require_once 'library/facebook/facebook.php';

$facebook = new Facebook(array(
'appId'  => 'appid',
'secret' => 'secret',
));

$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);

上記のコードの後に​​ UID を取得する方法。

4

2 に答える 2

1

これには Facebook API を含める必要はありません。これだけに、

$data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);
echo $data["user_id"];

$dataこれは、配列内の他の情報の完全なリストです。

{
  "algorithm": "HMAC-SHA256",
  "expires": 1317243600,
  "issued_at": 1317239909,
  "oauth_token": "<token>",
  "page": {
    "id": "<id>",
    "liked": false,
    "admin": true
  },
  "user": {
    "country": "in",
    "locale": "en_GB",
    "age": {
      "min": 21
    }
  },
  "user_id": "<user-id>"
}
于 2012-06-05T07:57:43.487 に答える
0

php sdkを使用しているので、

あなたは簡単に言うことができます

$user = $facebook->getUser();

PHP SDKは、signed_requestからuidを読み取ります。

また

これにより、署名されたリクエストから直接取得できます

$signed_request = $facebook->getSignedRequest();
$user = isset($signed_request['user_id']) ? $signed_request['user_id'] : '';
于 2012-06-05T08:05:47.380 に答える