0

このサイトhttps://www.oneall.com/を使用して、テスト サイトにソーシャル ログインを追加しようとしています。コードとログインを設定した後でも、アクセス トークンからユーザー データを抽出する方法がわかりません。ここに私が得るリンクがあります:

http://MYACCOUNT.api.oneall.com/socialize/redirect.html?provider_connection_token=アクセストークンはこちら

私はこのようなコールバックページでこのコードを取得します

if ( ! empty ($_POST['connection_token']))
{
echo "Connection token received: ".$_POST['connection_token'];
}
else
{
echo "No connection token received";
}
if ( ! empty ($_POST['connection_token']))
{
$token = $_POST['connection_token'];
$site_subdomain = 'myaccountname';
$site_public_key = 'public key';
$site_private_key = 'private key';
$site_domain = $site_subdomain.'.api.oneall.com';
$resource_uri = 'https://'.$site_domain.'/connections/'.$token .'.json';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $resource_uri);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_USERPWD, $site_public_key . ":" . $site_private_key);
curl_setopt($curl, CURLOPT_TIMEOUT, 15);
curl_setopt($curl, CURLOPT_VERBOSE, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($curl, CURLOPT_FAILONERROR, 0);
 $result_json = curl_exec($curl);
if ($result_json === false)
{
echo 'Curl error: ' . curl_error($curl). '<br />';
echo 'Curl info: ' . curl_getinfo($curl). '<br />';
curl_close($curl);
}
else
{
curl_close($curl);
$json = json_decode ($result_json);
 $data = $json->response->result->data;
 if ($data->plugin->key == 'social_login')
{
  if ($data->plugin->data->status == 'success')
  {
    $user_token = $data->user->user_token;

    $user_id = GetUserIdForUserToken($user_token);

    if ($user_id === null)
    {
      LinkUserTokenToUserId ($user_token, $user_id);
    }
    else
    {
    }

    }
   }
  }
}

ここで、データを抽出する方法と、このコードでユーザー名を抽出する例を少し学ぶ必要があります。

4

2 に答える 2

1

アクセス トークンを使用して、API を使用して oneall から接続の詳細を取得できます。

connection_token を使用して、接続の詳細 (ユーザーの Facebook プロファイル データを含む) を取得します。

http://MYACCOUNT.api.oneall.com/connections/ACCESS TOKEN HERE.json -->>json 形式のデータの場合

すべてのドキュメント

于 2013-11-15T10:01:28.390 に答える