public static function updateAccessTokenWithRefreshToken() { $curl = curl_init(self::$TOKEN_SERVICE_ADDRESS); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, 'refresh_token=' . self::$refresh_token . '&grant_type=refresh_token&client_id=' . self::$app_id . '&client_secret=' . self::$app_secret_key); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $s = curl_exec($curl); curl_close($curl); $a = json_decode($s, true); if (empty($a[self::PARAMETER_NAME_ACCESS_TOKEN])) { return false; } else { self::$access_token = $a[self::PARAMETER_NAME_ACCESS_TOKEN]; return true; } }
This is example of using SDK. */ /* Это пример использования SDK. */ $template = "<div id=\"t\"><div id=\"tr\"><div class=\"tc\" id=\"tc1\"><img src=\"%s\" class=\"pic\" alt=\"user photo\">%s</div><div class=\"tc\" id=\"tc2\">дружит с</div><div class=\"tc\" id=\"tc3\"><img src=\"%s\" class=\"pic\" alt=\"user photo\">%s</div></div></div>"; // method checks if request has parameter code // если в запросе есть параметр code (считается, что параметр получен после авторизации пользователя на ok) if (!is_null(OdnoklassnikiSDK::getCode())) { if (OdnoklassnikiSDK::changeCodeToToken(OdnoklassnikiSDK::getCode())) { // example of using makeRequest with parameters // method returns required info about current user // пример вызова метода с параметрами // запрашиваем информацию о текущем пользователе $current_user = OdnoklassnikiSDK::makeRequest("users.getCurrentUser", array("fields" => "name,pic_5")); // example of using makeRequest without parameters // method returns list of user's friends // пример вызова метода без параметров // запрашиваем списко друзей пользователя $friends = OdnoklassnikiSDK::makeRequest("friends.get"); // method returns required info about required users // запрашиваем имя и ссылку на фото первого друга из списка $first_friend = OdnoklassnikiSDK::makeRequest("users.getInfo", array("fields" => "name,pic_5", "uids" => $friends[0]))[0]; printf($template, $current_user["pic_5"], $current_user["name"], $first_friend["pic_5"], $first_friend["name"]); } } else { printf("<div><a class=\"odkl-oauth-lnk\" href=\"%s\"></a></div>", OdnoklassnikiSDK::getAuthorizeUrl()); } ?> </body> </html>