Синтаксическая ошибка Node.js "неожиданный токен" при "экспорте".

Я пытался выучить node.js. Я пытаюсь создать простой web-интерфейс node.js и интерфейс html-javascript для входа в систему с использованием аутентификации Facebook и сохранения идентификатора Facebook в Mongodb.

Я смог сделать это, следуя инструкциям, доступным онлайн.

Теперь я хочу разделить код на несколько файлов, но когда я пытаюсь создать маршрут "пользователь" и выставить функции через экспорт. Я получаю следующую ошибку.

module.exports.userLogin = function(req,res){
      ^ SyntaxError: Unexpected token .
    at Module._compile (module.js:437:25)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:362:17)
    at require (module.js:378:17)
    at Object.<anonymous> (C:\Users\Saumya\Desktop\vhsharedraft\web.js:2:6)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)

Заранее спасибо.

EDIT # 1

module.exports.userLogin = function(req,res){
    graph.setAccessToken(req.session.fb.access_token);

    graph.get("/me", function(err, data) {
        if(err){
            console.log('Error obtaining data.');
            return;
        }
        console.log(data);
    }

}

РЕДАКТИРОВАТЬ № 2

var mongo = require('mongodb'),
graph = require('fbgraph');



exports.userLogin = function(req,res){
    graph.setAccessToken(req.session.fb.access_token);

    graph.get("/me", function(err, data) {
        if(err){
            console.log('Error obtaining data.');
            return;
        }
        console.log(data);
    }
}

Это все, что у меня есть в маршруте пользователя. На самом деле, я совершил настоящую глупую ошибку, я оставил запятую перед graph = require('fbgraph') вместо точки с запятой. После исправления этой синтаксической ошибки я получаю эту ошибку.

}
^
SyntaxError: Unexpected token }
    at Module._compile (module.js:437:25)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:362:17)
    at require (module.js:378:17)
    at Object.<anonymous> (C:\Users\Saumya\Desktop\vhsharedraft\web.js:2:6)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)

Спасибо за быстрые ответы.

1 ответ

Решение

У вас есть опечатка здесь:

graph.get("/me", function(err, data) {
    if(err){
        console.log('Error obtaining data.');
        return;
    }
    console.log(data);
}

Так должно быть:

graph.get("/me", function(err, data) {
    if(err){
        console.log('Error obtaining data.');
        return;
    }
    console.log(data);
}); /* Note the added parenthesis here */

Также используйте exports.userLogin вместо module.exports.userLogin

Другие вопросы по тегам