2017-07-18 4 views
0

Ich versuche, spreadhseets von einem Google Drive eines Benutzers herunterladen. Ich stoße auf ein CORS-Problem.Google Drive: Gsheets herunterladen über REST API

http://javascript.wekeepcoding.com/article/15417055/CORS+on+exportLinks+for+Google+Docs+spreadsheets+not+working

das Lesen:

https://github.com/google/google-api-javascript-client/issues/47

Ich versuche, eine GET-Anfrage auf der Server-Seite zu machen. Ich habe versucht, restTemplate.exchange zu verwenden, aber ich bin mir nicht sicher, in welchem ​​Format meine Antwort sein sollte. Im Grunde völlig verloren.

Gibt es eine Möglichkeit, das GET zu machen, um die Datei zu ziehen und zu meinem Frontend zurückzugehen?

Ich halte immer diese Fehlermeldung für was auch immer Format Ich versuche:

org.springframework.web.client.RestClientException: Es konnte keine Antwort extrahieren: keine geeignete HttpMessageConverter für Antworttyp [Schnittstelle java.sql.Blob] gefunden und Inhaltstyp [application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]

Jede Hilfe sehr geschätzt.

Antwort

0

Soweit CORS geht, ist dies die entsprechende Anleitung, die ich finden kann, How to use CORS to access Google APIs

Verwenden XMLHttpRequest2 CORS-Anforderungen zu machen.

Eine CORS-Anfrage an eine Google-API ähnelt einer REST-Anfrage. Die URL für eine CORS Anfrage folgt diesem Muster:

https://www.googleapis.com + 
    REST path + URL Params 
Example: here is a REST request: 

var restRequest = gapi.client.request({ 
    'path': 'https://people.googleapis.com/v1/people/me/connections', 
    'params': {'sortOrder': 'LAST_NAME_ASCENDING'} 
}); 
And here is the equivalent CORS request: 

var xhr = new XMLHttpRequest(); 
xhr.open('GET', 'https://people.googleapis.com/v1/people/me/connections?sortOrder=LAST_NAME_ASCENDING'); 

Anfrage-Header werden auf die Anfrage hinzugefügt mit XMLHttpRequest.setRequestHeader.

Der Anfragetext wird mit der XMLHttpRequest.send-Methode gesendet.

Sie können Callbacks registrieren, indem Sie Event-Listener zu den Fehlern load und hinzufügen. Folgen Sie diesem Link für Informationen über XMLHttpRequest Ereignisse

Stellen Sie auch sicher, dass Sie die Berechtigung zum Herunterladen der Arbeitsblattdatei von dem anderen Benutzer haben.

Verwandte Themen