2016-11-13 1 views
7

Hallo, ich bin versucht, Google-Profilbild in meiner Website und andere zu ladenhttp: 403 verboten Fehler beim Versuch img src mit Google-Profil pic laden

I

var profile = googleUser.getBasicProfile(); 
profile.getImageUrl() 

getan habe, als ich Anmeldung mit google und die Bild-uRL in einer Datenbank speichern, aber wenn ich versuche, es in die scr eines img-Tag zu setzen, wie so

var img = document.createElement("img"); 
img.src = image; 
img.alt = "image"; 
img.style.float = "left"; 
divn.appendChild(img); 

ich manchmal 403 verboten Fehler, aber manchmal funktioniert es hier ist ein Beispiel für Link, dass ich derjenige bin mit, die nur ein bisschen

https://lh4.googleusercontent.com/-OmV9386WzGk/AAAAFFFFAAI/AAAAAAAACpc/BEtVNh85tnk/s96-c/photo.jpg 
geändert in der Datenbank gespeichert ist

so, ich frage mich nur, wenn ich es richtig Erhalt des Profil-Bild mache und seine für andere Benutzer auch auf der gleichen Seite

+4

3 Jahre später .. Ich stehe vor dem gleichen Problem ... haben Sie jemals eine Lösung dafür gefunden? – webkit

+0

Nein, ich habe mich gerade dafür entschieden, kein Google-Login zu verwenden. – JRowan

+1

wow. März 2017 und immer noch dieses Problem. Wenn ich es herausfinde, werde ich die Frage beantworten. Ich möchte wirklich die Google-Anmeldung verwenden können. –

Antwort

1

Ich könnte mir vorstellen, dass die URL dynamisch jedes Mal erstellt wird, wenn Sie es anfordern. Dies wird durch die Tatsache unterstützt, dass der Benutzer authentifiziert werden muss, um that URL abzurufen. (Wenn der Benutzer sich beispielsweise von einem zuvor autorisierten Dienst abmeldet/die Authentifizierung widerruft, sollte ein Dienst das Profilbild nicht mehr abrufen können)

Entweder Sie speichern das gesamte Bild als Blob in der Datenbank oder authentifizieren und verwenden Sie jedes Mal das Benutzerobjekt, um die URL anzufordern.

Verwenden Sie auch die API als referenzierte here.