разные токены авторизации для аккаунта Google - PullRequest
2 голосов
/ 28 марта 2012

Я получил php-код, используя cURL, чтобы получить токен авторизации Google для учетной записи Gmail.Я использую это для C2DM.Каждый раз, когда я запускаю этот скрипт, я получаю другой токен авторизации.Я думал, что у каждого аккаунта Google есть токен авторизации, который иногда обновляется.Но, как я уже сказал, я каждый раз получаю разные токены.Как мне управлять так часто меняющимся токеном?Как лучше использовать токены?

Это код, который я использовал для получения AUTH TOKEN для моей учетной записи gmail.

<?php
$ch_cl = curl_init();

curl_setopt($ch_cl, CURLOPT_URL, "https://www.google.com/accounts/ClientLogin");
curl_setopt($ch_cl, CURLOPT_FOLLOWLOCATION, true);

$data_cl = array('accountType' => 'GOOGLE',
    'Email' => 'xxxxxx@gmail.com',
    'Passwd' => 'xxxxxxxx',
    'source'=>'xxx-xxx-0.1',
    'service'=>'ac2dm'
);

curl_setopt($ch_cl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch_cl, CURLOPT_POST, true);
curl_setopt($ch_cl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch_cl, CURLOPT_POSTFIELDS, $data_cl);

$cLresponse = curl_exec($ch_cl);
// echo $cLresponse;
curl_close($ch_cl);
//parse the $cLresponse and pick out the clientLogin 'Auth' token
$cLrespArrys = explode("\n", $cLresponse);
$authStr = explode("=", $cLrespArrys[2]);

// echo "return is:<br>" . $authStr[0] . "=" . $authStr[1];

$auth = $authStr[1];

echo "<br><br>" . $auth;
?>

здесь $ auth содержит выданный AUTH TOKEN.

1 Ответ

0 голосов
/ 28 марта 2012

Для C2DM токен аутентификации генерируется каждый раз, когда вы регистрируетесь в службе C2DM.Получив токен авторизации после регистрации определенного устройства в службе C2DM, вы можете использовать тот же токен авторизации для связи с зарегистрированным устройством, если сервер C2DM не обновляет его.Проверьте C2DM сайт .Возможно, ваш PHP-код каждый раз вызывает службу регистрации C2DM.Надеюсь, это помогло.

...