0

С клиентом google api php что-то не так. Несмотря на то, что я следил за установкой на github, он все равно не работает. Я не использовал метод Composer, но я загрузил релиз. Я пытался использовать разные пути в ответ-callback.php require_once какНе удается правильно установить google-api-php-client

'google-api-php-client/src/google/autoload.php' 
'google-api-php-client/vendor_autoload.php' 

Но ничего не получалось ...

Ошибка:

Fatal error: require_once(): Failed opening required 'google-api-php-client/vendor/autoload.php' (include_path='.:/Users/mike/Documents/test:/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/php/sdk') in /Users/mike/Documents/test/response-callback.php on line 3 
Warning: require_once(google-api-php-client/vendor/autoload.php): failed to open stream: No such file or directory in /Users/mike/Documents/test/response-callback.php on line 3 

app.yaml:

application: csimporttest 
version: 1 
runtime: php55 
api_version: 1 

handlers: 
- url: /.* 
    script: main.php 

main.php

<!DOCTYPE html> 
<html> 

<head> 
</head> 

<body> 
<h2>Hi! Stackoverflow!</h2> 

<?php include'response-callback.php'; 
echo "response-callback file: ", $test; 

?> 
<a href="<?php include'response-callback.php'; echo $googleImportUrl; ?>"> Import google contacts </a> 
</body> 

</html> 

отклика callback.php

<?php 

require_once 'google-api-php-client/vendor/autoload.php'; 

$test = 'WORKS!'; 

$google_client_id = 'SECRET'; 
$google_client_secret = 'SECRET'; 
$google_redirect_uri = 'https://csimporttest.appspot.com'; 

//setup new google client 
$client = new Google_Client(); 
$client -> setApplicationName('csimporttest'); 
$client -> setClientid($google_client_id); 
$client -> setClientSecret($google_client_secret); 
$client -> setRedirectUri($google_redirect_uri); 
$client -> setAccessType('online'); 

$client -> setScopes('https://www.googleapis.com/auth/contacts.readonly'); 

$googleImportUrl = $client -> createAuthUrl(); 
function curl($url, $post = "") { 
$curl = curl_init(); 
$userAgent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)'; 
curl_setopt($curl, CURLOPT_URL, $url); 
//The URL to fetch. This can also be set when initializing a session with curl_init(). 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); 
//TRUE to return the transfer as a string of the return value of curl_exec() instead of outputting it out directly. 
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5); 
//The number of seconds to wait while trying to connect. 
if ($post != "") { 
curl_setopt($curl, CURLOPT_POST, 5); 
curl_setopt($curl, CURLOPT_POSTFIELDS, $post); 
} 
curl_setopt($curl, CURLOPT_USERAGENT, $userAgent); 
//The contents of the "User-Agent: " header to be used in a HTTP request. 
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, TRUE); 
//To follow any "Location: " header that the server sends as part of the HTTP header. 
curl_setopt($curl, CURLOPT_AUTOREFERER, TRUE); 
//To automatically set the Referer: field in requests where it follows a Location: redirect. 
curl_setopt($curl, CURLOPT_TIMEOUT, 10); 
//The maximum number of seconds to allow cURL functions to execute. 
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); 
//To stop cURL from verifying the peer's certificate. 
$contents = curl_exec($curl); 
curl_close($curl); 
return $contents; 
} 
if(isset($_SESSION['google_code'])) { 
$auth_code = $_SESSION['google_code']; 
$max_results = 200; 
    $fields=array(
     'code'=> urlencode($auth_code), 
     'client_id'=> urlencode($google_client_id), 
     'client_secret'=> urlencode($google_client_secret), 
     'redirect_uri'=> urlencode($google_redirect_uri), 
     'grant_type'=> urlencode('authorization_code') 
    ); 
    $post = ''; 
    foreach($fields as $key=>$value) 
    { 
     $post .= $key.'='.$value.'&'; 
    } 
    $post = rtrim($post,'&'); 
    $result = curl('https://www.googleapis.com/oauth2/v4/token',$post); 
    $response = json_decode($result); 
    $accesstoken = $response->access_token; 
    $url = 'https://www.google.com/m8/feeds/contacts/default/full?max-results='.$max_results.'&alt=json&v=3.0&oauth_token='.$accesstoken; 
    $xmlresponse = curl($url); 
    $contacts = json_decode($xmlresponse,true); 

$return = array(); 
if (!empty($contacts['feed']['entry'])) { 
foreach($contacts['feed']['entry'] as $contact) { 
      //retrieve Name and email address 
$return[] = array (
'name'=> $contact['title']['$t'], 
'email' => $contact['gd$email'][0]['address'], 
); 
} 
} 

$google_contacts = $return; 

unset($_SESSION['google_code']); 

} 
?> 

ответ

0

Просто поместите всю PHP клиентскую библиотеку Google в папку проекта, а затем изменить

require_once 'google-api-php-client/vendor/autoload.php'; 

к:

require_once 'google-api-php-client-1-master/src/Google/autoload.php';