Ich folge Github’s OAuth flow und erhalte ein Zugriffstoken, das mir Zugriff auf den E-Mail-Bereich des Benutzers gewährt. Wenn ich einen Code für einen Zugriffstoken auszutauschen, den https://github.com/login/oauth/access_token Endpunkt verwenden, erhalte ich die folgende Antwort:Github-Benutzer-E-Mail-Adresse ist null, trotz Benutzer: E-Mail-Bereich
{
access_token: '83f42..xxx’,
token_type: 'bearer',
scope: 'user:email'
}
sieht gut aus. Also habe ich diesen Antrag stellen, das Token mit meinen Benutzerdaten zu erhalten:
Accept-Language: en-us
Accept: application/json
Authorization: token 83f42..xxx
Accept-Encoding: gzip, deflate
GET https://api.github.com/user
ich tun, um meine Benutzerobjekt als Antwort, aber die E-Mail-Eigenschaft ist null. Hat noch jemand dieses Problem?
mit node.js mit Pass-github ist die Lösung 'Umfang weitergeben müssen: [ 'user: E-Mail']' zum GitHubStrategy Konstruktor. Beachten Sie, dass Sie ein Array mit den E-Mails des Benutzers erhalten, filtern Sie nach 'primär: true', wenn Sie möchten, usw. –
@AntonDrukh könnten Sie das ausarbeiten? Was wäre die "Pass-Github" Beschwörungsformel? – Fergie
@Fergie meine Antwort unten sehen, zu lang für einen Kommentar. –