节点服务器无法启动,给出意外令牌

时间:2016-11-22 18:46:25

标签: javascript node.js express

每次我尝试启动服务器时都会给我一个很长的错误:

SyntaxError: Unexpected token =
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/home/ubuntu/workspace/isal/routes/index.js:5:15)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)

语法错误的文件是这个index.js文件它声称有一个解析错误,带有最后一行的意外令牌,但是在意外令牌之后什么都没有,我真的没有看到模块导出的问题

var express = require('express');
var router = express.Router();
var imgur = require('../services/imgur');

router.get('/', function(req, res) {
  res.send('Hello');
});

router.get('/latest', function(req, res) {

});

router.get('/search/:q', function(req, res) {
    imgur.getImage(req.params.q, req.query.offset).then(ans => {
        res.json(ans);
});

module.exports = router;

1 个答案:

答案 0 :(得分:3)

您没有正确关闭最终的函数调用:

var express = require('express');
var router = express.Router();
var imgur = require('../services/imgur');

router.get('/', function(req, res) {
  res.send('Hello'); 
});

router.get('/latest', function(req, res) {

});

router.get('/search/:q', function(req, res) {
    imgur.getImage(req.params.q, req.query.offset).then(ans => {
        res.json(ans);
    }); <---------------- Missing
});

module.exports = router;

当您收到类似这样的语法错误时,它基本上意味着从错误发生的位置开始,并在您的文件中回溯,直到找到语法错​​误。如果抛出语法错误,总是会出现语法错误。你应该使用一个工具来编写语法高亮的代码,并为自己节省一些问题,比如IDE。