Download-Datei von Google Cloud Storage via PHP

Ich versuche, die download-Dateien aus meinem Eimer in der Google-Cloud-Speicher mit PHP. Ich kann hochladen, gut. Ich habe versucht einige codes, die ich gefunden habe, hier aber Laravel sagt mir, dass die Klasse Google_Http_Request nicht gefunden.

Dies ist der code, den ich versuche:

$request = new Google_Http_Request($object['mediaLink'], 'GET');
$signed_request = $client->getAuth()->sign($request);
$http_request = $client->getIo()->makeRequest($signed_request);
echo $http_request->getResponseBody();
InformationsquelleAutor rsebjara | 2016-06-22



One Reply
  1. 2

    Hier ist ein Beispiel, wie ein download-Objekt mit der neuesten version des client-Bibliothek (v2.0):

    //Authenticate your API Client
    $client = new Google_Client();
    $client->useApplicationDefaultCredentials();
    $client->addScope(Google_Service_Storage::DEVSTORAGE_FULL_CONTROL);
    
    $storage = new Google_Service_Storage($client);
    
    try {
        //Google Cloud Storage API request to retrieve the list of objects in your project.
        $object = $storage->objects->get($bucketName, $objectName);
    } catch (Google_Service_Exception $e) {
        //The bucket doesn't exist!
        if ($e->getCode() == 404) {
            exit(sprintf("Invalid bucket or object names (\"%s\", \"%s\")\n", $bucketName, $objectName));
        }
        throw $e;
    }
    
    //build the download URL
    $uri = sprintf('https://storage.googleapis.com/%s/%s?alt=media&generation=%s', $bucketName, $objectName, $object->generation);
    $http = $client->authorize();
    $response = $http->get($uri);
    
    if ($response->getStatusCode() != 200) {
        exit('download failed!' . $response->getBody());
    }
    
    //write the file (or do whatever you'd like with it)
    file_put_contents($downloadName, $response->getBody());

    Finden Sie weitere Beispiele zur Verwendung der storage-API in diesem Samples-Repository

    Es gibt auch eine neuere Bibliothek entwickelt, genannt gcloud-php die einige Dokumentation über den Aufruf der Google-Cloud-Speicher.

    • Ich war mit einigen code-Beispielen aus einer alten Bibliothek. Dein code funktioniert Super! Danke!!!
    • Haben Sie ein Beispiel, wie Sie sind hochladen? Das ist mein problem im moment.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.