2016-08-26 5 views
0
require_once ('../google-api-php/vendor/autoload.php'); 


$client = new Google_Client(); 
// Get your credentials from the console 
$client->setClientId('xxxxxxxxxxxxxxxxxxxx'); 
$client->setClientSecret('xxxxxxxxxxxxxxxx'); 
$client->setRedirectUri('xxxxxxxxxxxxxxxxxxxx'); 
$client->setScopes(array('https://www.googleapis.com/auth/drive.file')); 

session_start(); 

if (isset($_GET['code']) || (isset($_SESSION['access_token']) &&   $_SESSION['access_token'])) { 
if (isset($_GET['code'])) { 
    $client->authenticate($_GET['code']); 
    $_SESSION['access_token'] = $client->getAccessToken(); 
} else 
    $client->setAccessToken($_SESSION['access_token']); 

$service = new Google_Service_Drive($client); 

//Insert a file 
$file = new Google_Service_Drive_DriveFile(); 
$file->setName(uniqid().'.jpg'); 
$file->setDescription('A test document'); 
$file->setMimeType('image/jpeg'); 

$data = file_get_contents('a.jpg'); 

$createdFile = $service->files->create($file, array(
     'data' => $data, 
     'mimeType' => 'image/jpeg', 
     'uploadType' => 'multipart' 
    )); 

print_r($createdFile); 

} else { 
$authUrl = $client->createAuthUrl(); 
header('Location: ' . $authUrl); 
exit(); 

dies ist der Fehler:Google Drive hochladen php

Uncaught exception 'Google_Service_Exception' with message '{ "error": { "errors": [ { "domain": "global", "reason": "authError", "message": "Invalid Credentials", "locationType": "header", "location": "Authorization" } ], "code": 401, "message": "Invalid Credentials" } }.....

Aber die Client-ID und Client-Geheimnis ara copyfrom meine Konsole ...

+1

Das bedeutet, dass ein Problem mit Ihrem Zugriffstoken vorliegt. Es könnte null, beschädigt oder abgelaufen sein. Verfolgen Sie die http-Anfrage und schauen Sie sich den Header der Authentifizierung an. – pinoyyid

Antwort

0

nun das Skript Arbeit, 2 Antwort:

1: Wie kann ich einen Ordner auf dem Laufwerk erstellen, wenn der Ordner nicht existiert?

2: Wie kann ich einen Ordner zum Einfügen der hochgeladenen Datei festlegen.

Tanks

0

Das Skript arbeiten, aber wenn die Sitzung Web-Browser abgelaufen oder Änderung muß ich meine Google-Anmeldeinformationen einzufügen, ist es eine Möglichkeit, ohne Einsatz Berechtigungsnachweis zu arbeiten?

Verwandte Themen