Javascript 快速生成器样本返回未找到错误
我随后在共享主机上设置了一个示例express应用程序 超级简单的“Hello World”示例非常有效:Javascript 快速生成器样本返回未找到错误,javascript,node.js,express,Javascript,Node.js,Express,我随后在共享主机上设置了一个示例express应用程序 超级简单的“Hello World”示例非常有效: var express = require('express'); var app = express(); app.get('/express-hw/hello.txt', function(req, res){ res.send('Hello World'); }); var server = app.listen(61245, function() { console
var express = require('express');
var app = express();
app.get('/express-hw/hello.txt', function(req, res){
res.send('Hello World');
});
var server = app.listen(61245, function() {
console.log('Listening on port %d', server.address().port);
});
然后我使用expressgameapi
设置了一个示例应用程序,该应用程序运行良好。(gameapi
是项目名称)。启动该应用程序也很有效
(编辑正在生成的请求
但是,在任何请求中,控制台都会报告404错误:
GET /gameapi/public/images/test.jpg 40438.042 ms - 1282
浏览器窗口中的输出如下所示:
Not Found
404
Error: Not Found
at app.use.res.render.message (/var/www/virtual/ngmir/html/nodejs/gameapi/app.js:30:15)
at Layer.handle [as handle_request] (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/layer.js:76:5)
at trim_prefix (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:270:13)
at /var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:237:9
at Function.proto.process_params (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:312:12)
at /var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:228:12
at Function.match_layer (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:295:3)
at next (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:189:10)
at /var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:191:16
at Function.match_layer (/var/www/virtual/ngmir/html/nodejs/gameapi/node_modules/express/lib/router/index.js:295:3)
我假设这是一个服务器设置问题,因为代码应该是“开箱即用”的。但从那以后我几乎迷路了。有人能给我一些关于调查什么的建议吗
提前非常感谢。您应该发布您实际使用的
app.js
。似乎您没有使用为您的公共目录服务的静态
中间件。你在app.js中看到了吗?谢谢你的反馈。这就是工具生成的内容。也编辑了这篇文章。@NicolasMcCurdy是(请参阅前面评论中的链接)。问题不限于公用目录,而是任何请求。(比如example.com/bleh)看起来您的路由实际上并不是从/gameapi
开始装载的。默认情况下,static
将装载到/public
,而不是/gameapi/public
。也许您应该在安装在/gameapi
的路由器上定义此中间件。你用的是Express 4,对吗?