У меня возникла проблема с обновлением обложки для пользователей с использованием php (рамки zend) и Oauth.Как скрыть Google+ обложку
Я добавил к моему composer.json следующие строки:
"require" : {
"google/auth": "0.7",
"google/apiclient" : "^[email protected]"
}
После этого я сделал композитор установить + композитор-обновление с помощью и oppp я получаю библиотеку внутри моего поставщика.
Я настроил мое приложение в Google разрабатывает консоль, после официального учебника по гугле: D
Теперь внутри моего контроллера я мог бы легко запросить веб-службы Google, используя этот метод:
public function googleplusAction()
{
Zend_Loader::loadFile("HttpPost.class.php");
$client_id = "id_here";
$client_secret = "secret_here";
$application_name = "application_name_here";
$redirect_uri = "redirection_uri_here";
$oauth2_server_url = 'https://accounts.google.com/o/oauth2/auth';
$query_params = array(
'response_type' => 'code',
// The app needs to use Google API in the background
'client_id' => $client_id,
'redirect_uri' => $redirect_uri,
'scope' => 'https://www.googleapis.com/auth/userinfo.profile'
);
$forward_url = $oauth2_server_url . '?' . http_build_query($query_params);
header('Location: ' . $forward_url);
}
После этого Я перенаправляюсь к URI перенаправления, а в баре адрес получает новую переменную 'code'.
До сих пор я надеюсь, что все будет в порядке, придя к самой важной части, контроллеру страницы URI перенаправления, используя переменную «code», о которой я говорил об этом, прежде чем попытался получить токен доступа, но Я потерпел неудачу.
Это метод, который должен установить новую крышку изображения на Google плюс:
$client_id = "client-id";
$client_secret = "g+-secret";
$application_name = "my-app-name";
$redirect_uri = "my-uri-on-g+";
$client = new Google_Client();
$client->setClientId($client_id);
$client->setClientSecret($client_secret);
$client->setRedirectUri($redirect_uri);
$service = new Google_Service_Oauth2($client);
$client->addScope(Google_Service_Oauth2::USERINFO_PROFILE);
$client->authenticate($_GET['code']); // I have the right code, and I am being authenticated
$plus = new Google_Service_Plus($client);
$person = $plus->people->get('me');
var_dump($person);
$pic = $this->session->image['generatedAbs'];
$gimg = new Google_Service_Plus_PersonCover();
$source = new Google_Service_Plus_PersonCoverCoverPhoto();
$source ->setUrl("$photo-that-i-wanted-to-put-on-g+");
$gimg->setCoverPhoto($source);
$person->setCover($gimg);}
Так что мои вопросы:
- Как я могу изменить свой Google Plus сопроводительное изображение на новый PNG или изображение JPEG, которое у меня уже есть в моем проекте?
внутри библиотеки G + я нашел этот метод:
Google_Service_Plus_PersonCoverCoverPhoto();
внутри класса под названием
Google_Service_Plus_PersonCover();
Но как я могу его использовать?
ОК вы правы, есть ли какой-либо способ, по крайней мере, добавить эту фотографию в фотоальбом пользователя? –
Проверьте Picasa api или новую фотографию Google, которую я не знаком с этими apis – DaImTo