2017-09-04 2 views
1

Merci d'avoir jeté un coup d'œil. C'est l'erreur de syntaxe que j'obtiens:Erreur de syntaxe de jeton inattendue Je ne vois pas

[0] /Users/alexkarasik/Documents/server/services/passport.js:26 
[0] async (accessToken, refreshToken, profile, done) => { 
[0]  ^
[0] SyntaxError: Unexpected token (

et c'est le fichier auquel référence l'erreur. Je cherchais chose et vers le bas depuis plus de 2 heures et ne vois aucune raison à obtenir cette erreur:

const passport = require('passport'); 
const GoogleStrategy = require('passport-google-oauth20').Strategy; 
const mongoose = require('mongoose'); 
const keys = require('../config/keys'); 

const User = mongoose.model('users'); 

passport.serializeUser((user, done) => { 
    done(null, user.id); 
}); 

passport.deserializeUser((id, done) => { 
    User.findById(id) 
    .then(user => { 
     done(null, user); 
    }) 
}); 

passport.use(
    new GoogleStrategy({ 
    clientID: keys.googleClientID, 
    clientSecret: keys.googleClientSecret, 
    callbackURL: '/auth/google/callback', 
    proxy: true 
    }, 
async (accessToken, refreshToken, profile, done) => { 
    const existingUser = await User.findOne({ googleId: profile.id }); 

    if (existingUser){ 
      //we already have a record with the give profileId 
      return done(null, existingUser); 
    } 
      // we don't have a user record with this ID, make a new record 
     const user = await new User({ googleId: profile.id }).save(); 
     done(null, user); 
    } 
) 
); 

J'apprécie vraiment toute entrée.

+2

Votre serveur prend-il entièrement en charge ESnext? (en particulier async attendre ..) –

+0

@Jonasw a probablement raison. Avez-vous un fichier de configuration webpack ou une configuration babelrc? – sourRaspberri

+0

@sourRasperri webpack? Qu'est-ce que cela a à faire avec le code serveur? Et pourquoi un babel devrait-il simplement mettre à jour les bodejs? –

Répondre

0

Le noeud n'était tout simplement pas mis à jour correctement pour la nouvelle syntaxe ES6. La mise à jour a résolu ce problème. Merci de votre aide.