Интеграция с логином Google - PullRequest
3 голосов
/ 02 июня 2011

Я очень новичок в API входа в социальную сеть.Сейчас я работаю в интеграции входа в Google.

Я протестировал образцы классов openid и получил следующее:

https://www.google.com/accounts/o8/id?id=ID

Как мне извлечь значения (информацию о пользователе, список друзей и т. Д.) Из?

Мне нужно для этого создать любое приложение Google?

Не могли бы вы помочь мне с интеграцией.

Спасибо, что заглянули в это.

1 Ответ

1 голос
/ 15 июля 2011

Вы можете довольно легко получить доступ к пользовательской информации с помощью LightOpenID .Вы можете легко получить доступ к расширениям AX / SREG

> AX and SREG extensions are supported.  * To use them, specify
> $openid->required and/or $openid->optional before calling
> $openid->authUrl().  * These are arrays, with values being AX schema
> paths (the 'path' part of the URL).  * For example:  *  
> $openid->required = array('namePerson/friendly', 'contact/email');  * 
> $openid->optional = array('namePerson/first');  * If the server
> supports only SREG or OpenID 1.1, these are automaticaly  * mapped to
> SREG names, so that user doesn't have to know anything about the
> server.
> To get the values, use $openid->getAttributes().

<?php

# Logging in with Google accounts requires setting special identity, so this example shows how to do it.
require 'openid.php';
try {
    $openid = new LightOpenID;
    $openid->required = array('namePerson/friendly', 'contact/email');
    $openid->optional = array('namePerson/first');

    if(!$openid->mode) {
        if(isset($_GET['login'])) {
            $openid->identity = 'https://www.google.com/accounts/o8/id';
            header('Location: ' . $openid->authUrl());
        }
?>
<form action="?login" method="post">
    <button>Login with Google</button>
</form>
<?php
    } elseif($openid->mode == 'cancel') {
        echo 'User has canceled authentication!';
    } else {
        echo 'User ' . ($openid->validate() ? $openid->identity . ' has ' : 'has not ') . 'logged in.';
        echo "<p>";
        print_r($openid->getAttributes());
        echo "</p>";
    }
} catch(ErrorException $e) {
    echo $e->getMessage();
}


` print_r($openid->getAttributes());` shows email name which was required because `$openid->required = array('namePerson/friendly', 'contact/email');` I wonder why friendly is not shown, but I don't even think I set one for gmail.

Чтобы получить информацию из списка друзей, вам, вероятно, стоит изучить Google Friend Connect .Может быть, эта ссылка может помочь вам => http://docs.opensocial.org/display/OSD/Integrating+your+PHP+site+with+Google+Friend+Connect+and+Open+Social

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...