Ten błąd występuje tylko na Heroku (produkcja), a nie lokalnie. Próbowałem zarówno:Błąd braku zasięgu w wywołaniu zwrotnym uwierzytelniania Google przy użyciu pliku Node.js/Passport
passport.authenticate('google', { scope: 'https://www.googleapis.com/auth/plus.login https://www.googleapis.com/auth/analytics.readonly' })
, a
passport.authenticate('google', { scope: ['profile', 'email'] })
czy zakres jest tablicą, lub ciąg spacjami.
Po przejściu do łącza uwierzytelniającego Google zakres IS znajduje się w adresie URL. Nie ma różnicy w tej generowanej w mojej aplikacji do produkcji na żywo.
Ale wciąż otrzymujemy:
Error 400
Error: invalid_request
Missing required parameter: scope
Czy próbowałeś już sprawdzić swoją aplikację Google w Google Developer Console? Zgaduję, że nie dostarczyłeś tam autoryzowanego identyfikatora URI przekierowania dla twojej aplikacji produkcyjnej (zakładając, że działa lokalnie, jest to najbardziej prawdopodobny scenariusz). Czasami błędy podawane przez Google są nieprawidłowe/niejednoznaczne (nauczyłem się tego na własnej skórze). – rdegges