处理中间件模块上的“找不到文件”异常

时间:2019-07-17 12:11:02

标签: javascript node.js node-modules

我正在使用两个路由文件处理 NodeJS 中的服务器,我想检查其中一个文件是否存在并可以使用:

server.js

const express = require('express');
const app = express();
const maklarhuset = require('./maklarhuset');

// More stuff...

app.use('/maklarhuset', maklarhuset);

app.listen(8080, async function() {
  console.log("Server NodeJS init at port 8080");
});

maklarhuset.js

const express = require('express');
const router = express.Router();

router.get('/', function(req, res) {
    // Some code here...
});

router.get('/server-connection-test', async function(req, res) {
    // Some code hete...
});

// More stuff...

module.exports = router;

我尝试了一些经典的 try-catch 块:

server.js

var maklarhuset = undefined;

try {
    maklarhuset = require('./maklarhuset');
} catch(e) {
    console.error('Not found!');
}

app.use('/maklarhuset', maklarhuset);

但是我得到了

  

Router.use()需要中间件功能,但未定义

另外,如果我将“ use”放入尝试中:

server.js

var maklarhuset = undefined;

try {
    maklarhuset = require('./maklarhuset');
    app.use('/maklarhuset', maklarhuset);
} catch(e) {
    console.error('Not found!');
}

启动服务器时不会出现错误,但是即使文件存在也无法进行路由:

http://localhost:8080/maklarhuset/server-connection-test
  

ENOENT:没有这样的文件或目录,统计信息   'E:\ desarrollo \ plantillas \ v4 \ suecos \ maklarhuset \ server-connection-test'

0 个答案:

没有答案