2016-07-05 3 views
0

Ich habe versucht, Google Drive-Dokument an meine php Gmail Api Compose Box anhängen.Datei von Google Drive an Google Mail anfügen api verfassen Mail

Bis jetzt habe ich es geschafft, Datei-ID auf ausgewählte Datei zu bekommen, aber kann keine richtige Methode finden, wie diese Datei anhängen.download URL zu Mailbox. Gibt es einen Weg dazu?

ich versuche auch Download-Datei folgenden Code verwenden, aber zeigt Fehler „Nur Binärdatei heruntergeladen werden kann“

var downloadUrl = 'https://www.googleapis.com/drive/v2/files/' + file.id + '?alt=media'; 
    //var downloadUrl2 = file.downloadUrl1; 
    if (downloadUrl) { 
    //var accessToken = gapi.auth.getToken().access_token; 
    //debugger; 
    var xhr = new XMLHttpRequest(); 
    xhr.open('GET',downloadUrl); 
    debugger; 
    xhr.setRequestHeader('Authorization', 'Bearer ' + AUTH_TOKEN); 
    xhr.onload = function() { 
    alert(xhr.responseText); 

    }; 
    xhr.onerror = function() { 
    alert('Error'); 
    }; 
    xhr.send(); 
    } else { 
    alert('No Url'); 
    } 

Antwort

0

Ich versuche auch Datei herunterladen folgenden Code verwenden, aber Fehler zeigt „Nur Binärdatei kann . heruntergeladen werden

Dies bedeutet, dass Sie es konvertieren müssen zuerst binär ich schlage vor, Sie mit Blick in:

  1. WindowBase64.btoa() - Methode erstellt eine Base-64-codierte ASCII-Zeichenfolge aus einem String-Objekt, in der jedes Zeichen in der Zeichenfolge als ein Byte aus binären Daten behandelt wird. var encodedData = window.btoa (stringToEncode);

  2. Arraybuffer & Uint8Array - Dieses Beispiel liest ein Bild als eine binäre Datei und erzeugt einen 8-bit unsignierten Ganzzahl-Array aus dem unformatierten Bytes oReq.onload = function (oEvent) { var Arraybuffer = oReq.response; // Hinweis: nicht oReq.responseText if (arrayBuffer) { var byteArray = neu Uint8Array (arrayBuffer); for (var i = 0; i < byteArray.byteLength; i ++) { // Etwas mit jedem Byte in dem Array } } }

Datei von Google Drive Bringen Sie api gmail Mail erstellen

von ctrlq tutorial beginnen Sie mit einer MIME-Nachricht erstellen, die mit RFC 2822-Standard und rufen Sie den Google Mail-API sendet die angegebene Nachricht an den Empfänger in dem an, Cc und Bcc-Header entspricht. Wir verwenden den/upload URI mit der Methode messages/send zum Hochladen der Dateien mit der Nachricht, und uploadType wird auf media gesetzt, um die Dateien ohne Metadaten hochzuladen.

Zusätzliche Lesung: GMAIL API für sending Email with attachment.

Verwandte Themen