рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░!
рдореЗрд▓рдмрд░реНрди рд╕рд╣рд┐рдд рд╡рд┐рднрд┐рдиреНрди рд╕реЗрд╡рд╛рдУрдВ рдкрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рдПрдирдЬреЗрдб рдХрд╛ рдПрдХ
рд▓реЗрдЦ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореМрдЬреВрдж рдерд╛ред рд▓реЗрдХрд┐рди рдпрд╣ Yii рдХреЗ рд▓рд┐рдП рдерд╛ рдФрд░ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдкреНрд░реЛрд╡реЗрдбрдирд┐рдХ рд╕реЗ рдПрдХ
рд▓реЗрдЦ рднреА рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдиреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ + php рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рд╕рд░реНрд╡рд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рд╡рд┐рдзрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП, PHP рдФрд░ рд╕рд░реНрд╡рд░-рд╕рд░реНрд╡рд░ рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЪрд░рдг 1. рдПрдХ рд╕рд╛рдЗрдЯ рд░рдЬрд┐рд╕реНрдЯрд░
рд╣рдо рд▓рд┐рдВрдХ
http://api.mail.ru/sites/my/add рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдмрд╛рдж, рд░рд┐рд╕реАрд╡рд░ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВред
рдкрдВрдЬреАрдХрд░рдг рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ 3 рдкреИрд░рд╛рдореАрдЯрд░ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ:
- рдЖрдИрдбреА
- рдирд┐рдЬреА рдХреБрдВрдЬреА
- рдЧреБрдкреНрдд рдХреБрдВрдЬреА
рд╣рдо рдХреЗрд╡рд▓
рдЖрдИрдбреА рдФрд░
рдЧреБрдкреНрдд рдХреБрдВрдЬреА рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦреЗрдВрдЧреЗ (рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рдирд┐рдЬреА рдХреБрдВрдЬреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ)ред рд╣рдо рдЙрдиреНрд╣реЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд╛рдореЛрдВ рдХреЗ рддрд╣рдд рд╣рдорд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВрдЧреЗред
$APP_ID; $APP_SECRET;
рдЪрд░рдг 2. рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛
рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ
connect.mail.ru/oauth/authorize рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рдХреЗ рд▓рд┐рдП $ _GET рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
- client_id - рд╕рд╛рдЗрдЯ рдЖрдИрдбреА
- response_type - рд╕реЗ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП 3 рд╡рд┐рдХрд▓реНрдкред рдЯреЛрдХрди - рдПрдкреАрдЖрдИ рддрдХ рдкрд╣реБрдВрдЪ рдХреЗрд╡рд▓ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдХреЛрдб_рдФрд░_рдЯреЛрдХреЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рджреА рдЬрд╛рдПрдЧреА - рд╕рд░реНрд╡рд░ рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдкреАрдЖрдИ рддрдХ рдкрд╣реБрдВрдЪ, рдХреЛрдб - рд╕рд░реНрд╡рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдкреАрдЖрдИ рддрдХ рдкрд╣реБрдВрдЪред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдХреЛрдб рд╣реЛрдЧрд╛ред
- redirect_uri - response_type рдкреНрд░рд╛рдкреНрдд рдкреГрд╖реНрда рдХрд╛ URL
- рдЧреБрдВрдЬрд╛рдЗрд╢ - рдЖрд╡реЗрджрди рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ ред рдкреИрд░рд╛рдореАрдЯрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдмреЗрдорд╛рдиреА рд╣реИред рдпрджрд┐ рдЖрдк рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рдирд┐рдЬреА рдбреЗрдЯрд╛ рдХреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП рдЧреБрдВрдЬрд╛рдЗрд╢ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдЙрд╕рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВрдЧреЗ:
example.com/login.php - рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ)ред
example.com/auth.php - рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЛрдбред
рдЕрдВрддрд┐рдо рдХреНрд╡реЗрд░реА рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:
$redirect_uri = urlencode("http://example.com/auth.php"); $login_url = "https://connect.mail.ru/oauth/authorize?client_id={$APP_ID}&response_type=code&redirect_uri={$redirect_uri}";
рдЗрд╕ рдкрддреЗ рдкрд░ рдЬрд╛рдХрд░ Mail.ru рдкрд░ рдПрдХ рдЕрдирдзрд┐рдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреЗрдЦреЗрдВрдЧреЗ:

рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ Mail.ru рдкрд░ рдЕрдзрд┐рдХреГрдд рд╣реИ, рддреЛ рд╡рд╣ рдЙрд╕реА рд╡рд┐рдВрдбреЛ рдХреЛ рджреЗрдЦреЗрдЧрд╛, рд▓реЗрдХрд┐рди рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдХрд┐рдП рдмрд┐рдирд╛ред
рдЕрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ 2 рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ: рд╕рдХреНрд╖рдо рдФрд░ рдЕрдХреНрд╖рдо рдХрд░реЗрдВред рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рдХрд░, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдкреГрд╖реНрда рдкрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде
рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдпрджрд┐ рд╕рдм рдХреБрдЫ рд╕рд╣реА рд╣реЛ рдЧрдпрд╛ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рд╕рд╛рдЗрдЯ рдХреЛ рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪ рдХреА рдЕрдиреБрдорддрд┐ рджреА, рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ $ _GET рдХреЛрдб рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде
рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ_рдпреВрд░реА рдкреГрд╖реНрда (http://example.com/auth.php) рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рдирд╛рдо рдХреЗ рддрд╣рдд рдЗрд╕реЗ рд╕рд╣реЗрдЬреЗрдВ
$APP_CODE;
рдЪрд░рдг 3. рдЯреЛрдХрди рдФрд░ рдпреВрдЖрдИрдбреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛
рдЕрдЧрд▓рд╛, рд╣рдореЗрдВ рд╕рддреНрд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ (рдЯреЛрдХрди) рдФрд░ Mail.ru рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдИрдбреА рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдкреНрдд рдХреЛрдб рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдПрдкреАрдЖрдИ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ
connect.mail.ru/oauth/token рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
- client_id ($ APP_ID)
- client_secret ($ APP_SECRET)
- рдЕрдиреБрджрд╛рди_рдкреНрд░рдХрд╛рд░ (рдкреНрд░рд╛рдзрд┐рдХрд░рдг_рдХреЛрдб)
- рдХреЛрдб ($ APP_CODE)
- redirect_uri (рдЪрд░рдг 2 рд╕реЗ $ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд)
рд╕рднреА рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ_рдпреВрд░реА рдХреЛ рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдореЗрд▓ рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдХрд╛ рд╣рдордиреЗ рдЪрд░рдг 2 рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛ред
рдЯреЛрдХрди рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХреЗрд╡рд▓ POST рдЕрдиреБрд░реЛрдз рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП CURL:
$ch = curl_init(); $url = "https://connect.mail.ru/oauth/token"; $fields = Array( 'client_id' => $APP_ID, 'client_secret' => $APP_SECRET, 'grant_type' => "authorization_code", 'code' => $APP_CODE, 'redirect_uri' => urlencode(redirect_uri) ); foreach($fields as $key => $value){ $fields_string .= $key . '=' . $value . '&'; } rtrim($fields_string, '&'); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string); $result = curl_exec($ch); curl_close($ch); $arr = json_decode($result, true);
рдЪрд░рдг 4. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
рдЯреЛрдХрди рдФрд░
рдпреВрдЖрдИрдбреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж
, рд╕рд╛рдЗрдЯ
www.appsmail.ru/platform/api рдкрд░ Mail.ru API рдХреА рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкреНрд░рддреАрдХреНрд╖рд┐рдд рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд
рдХрд░рддреА рд╣реИ ред
рд▓реЗрдХрд┐рди рд╕рдм рдХреБрдЫ рдЗрддрдирд╛ рд╕рд░рд▓ рдирд╣реАрдВ рд╣реИ, рдПрдкреАрдЖрдИ рдХреЗ рд╣рд░ рдЕрдиреБрд░реЛрдз рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд┐рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдПред рд╣рд╕реНрддрд╛рдХреНрд╖рд░ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ) рдПрдХ рд╣реИрд╢ рдХреА рдЧрдгрдирд╛ рд╣реИ, рдЬреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╡рд┐рднрд╛рдЬрдХ рдФрд░
рдирд┐рдЬреА рдХреБрдВрдЬреА рдХреЗ рдПрдкреАрдЖрдИ рдХреЛ рджрд┐рдП рдЧрдП рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдПрдХ рд╡рд░реНрдгрд╛рдиреБрдХреНрд░рдо рд╕реЗ рдХреНрд░рдордмрджреНрдз рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реЗ md5 рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
md5('app_id=423004method=friends.getsession_key=be6ef89965d58e56decdfacb9b62bdaa' . $APP_SECRET);
Mail.ru рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдФрд░ рд╕рд░реНрд╡рд░-рд╕рд░реНрд╡рд░: 2 рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЕрдВрддрд░ 2 рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рдЕрдзрд┐рдХ рд╕реБрд░рдХреНрд╖рд╛ рд╣реИред рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ API рдХреЗ рдЕрдиреБрд░реЛрдз рдореЗрдВ
рд╕реБрд░рдХреНрд╖рд┐рдд = 1 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рд╣рдо
Users.getInfo рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Mail.ru рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рдкреВрд░рд╛ рдХрд░реЗрдВрдЧреЗред
$request_params = Array( 'app_id' => $APP_ID, 'uids' => $uid, 'method' => 'users.getInfo', 'secure' => 1, 'session_key' => $token );
рд╡рд╣ рд╕рдм рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдореЗрдВ рд╡рд╣ рдбреЗрдЯрд╛ рдорд┐рд▓рд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдмрд╛рдж рдХреА рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкрд╣рд▓реЗ рд╣реА рдмрд╛рд░-рдмрд╛рд░ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
рдпрд╣рд╛рдБ ред рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЗрд╕рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рджрд┐рдЦрддрд╛ред
рд▓рд╛рдн !! 1 рд╕рднреА рдХреЛ рдЕрдЪреНрдЫрд╛ред рдпрджрд┐ рд▓реЗрдЦ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдореИрдВ Vkontakte рдФрд░ Facebook рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб oAuth 2.0 рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рднреА рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
рд╕рдВрджрд░реНрдн