我正在尝试运行我的第一个express应用程序,但似乎无法显示我的网页。我有以下代码:
var fs = require("fs");
var config = JSON.parse(fs.readFileSync("files/config.json"));  
var host = config.host;
var port = config.port;
var express = require("express");
var app = express();
app.use(app.router);
app.use(express.static(__dirname + "/public"));
app.get("/", function(request, response){
    response.send("hello!");
});
app.listen(port, host);
console.log("Listening on port" + port);这是我的目录树
nodejs/
    js/
        javascript.js
    public/
        index.html我知道服务器正在运行,因为我在运行127.0.0.01:1337时会在浏览器中获得"Hello!"响应
但是,当我尝试输入网页1227.0.0.1:1337/index.html时,浏览器中显示了Cannot GET /index.html
所以我猜是我的get方法中的name值出了问题,但是我不知道它是什么,也不知道如何修复它。
发布于 2013-10-28 00:34:19
您的应用程序将只路由在您的app.use(app.router)调用时设置的页面请求。因此,请将您的app.use调用重新排序为以下方法之一:
快递3
app.use(express.static(__dirname + "/public"));
app.use(app.router);__dirname是执行脚本所在的目录,因此因为它位于public的对等体js目录中,所以您的代码需要是:
app.use(express.static(__dirname + "/../public"));
app.use(app.router);Express 4
Express 4 removes the need to manually do app.use(app.router)。使用Express 4,您只需:
app.use(express.static(__dirname + "/../public"));
发布于 2018-05-04 02:10:26
我有这个问题..。在经历了很多麻烦之后,我发现如果你在t时间运行两个工作区或项目,那么它将创建这个场景。因此,您可能一次只打开一个工作区,而不仅仅是文件...打开hole文件夹,然后在VS代码设置中运行以下更改的特定file.make。
设置设置
适用于64位系统。
{
    "liveServer.settings.AdvanceCustomBrowserCmdLine: ": "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe",
    "liveServer.settings.NoBrowser": false
}适用于32位系统。
{
    "liveServer.settings.AdvanceCustomBrowserCmdLine: ": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
    "liveServer.settings.NoBrowser": false
}https://stackoverflow.com/questions/19620239
复制相似问题