gpt4 book ai didi

node.js - 一起使用 Node-Static 和 Journey

转载 作者:太空宇宙 更新时间:2023-11-03 22:19:13 25 4
gpt4 key购买 nike

我是第一次使用 Node.js。我正在使用 node-static 提供静态文件并使用 journey 进行路由。不幸的是,两者似乎相互冲突,我不确定停止冲突的最佳方法。我的服务器看起来像这样:

var http = require('http');
var nodeStatic = require('node-static');
var journey = require('journey');

var fileServer = new nodeStatic.Server('./public');
var router = new journey.Router;


module.exports = http.createServer(function (req, res) {
router.get('/api').bind(function (req, res) {
res.send(200);
});
var fileServer = new nodeStatic.Server('./public');
var router = new journey.Router;


module.exports = http.createServer(function (req, res) {
router.get('/api').bind(function (req, res) {
res.send(200);
});

req.addListener('end', function () {
fileServer.serve(req, res);

router.handle(req, '', function (result) {
res.writeHead(result.status, result.headers);
res.end(result.body);
});
});
});

问题在于 Journey 路由器会发送 404 响应。我设法使其工作的唯一方法是在 end 监听器中执行此操作:

  req.addListener('end', function () {
router.handle(req, '', function (result) {
if (result.status === 404) {
fileServer.serve(req, res);
}
else {
res.writeHead(result.status, result.headers);
res.end(result.body);
}
});
});

但这似乎不是我应该处理事情的方式。我做错了什么?

最佳答案

我找到了a gist showing how to use node-static with journey 。我基本上是对的。不过,我很高兴听到任何替代解决方案!

关于node.js - 一起使用 Node-Static 和 Journey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7220278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com