错误NodeJS:无法获取

时间:2017-03-23 10:45:38

标签: javascript node.js express

我会尽可能地保持清醒。所以我试图制作一个小平台。我希望有人连接到该页面(在localhost中)然后,可以点击一个按钮,这个按钮会将他重定向到另一个html页面。

所以我有一个项目文件夹,我的"首字母" html,我的app.js文件,以及另一个html文件,它应该在点击按钮时自动显示。

服务器的工作方式如下:

    var application = require('express')(),
    server = require('http').createServer(application),
    io = require('socket.io').listen(server),
    ent = require('ent'),
    fs = require('fs');

application.get('/', function (req, res) {
  res.sendfile(__dirname + '/index.html');

});

然后,我有按钮:

<a href="pfc.html" target="_blank"> <input type="button" value="blah"></a>

启动&#34;节点app.js&#34;在终端上,我进入页面,点击按钮,然后我收到错误&#34;无法获取/pfc.html"。

对不起,如果我不太理解,我希望有人能理解我。

谢谢,祝你有愉快的一天!

2 个答案:

答案 0 :(得分:2)

如果浏览器要求/

,您编写了一些代码来告诉您的服务器该怎么做
application.get('/', function (req, res) {
  res.sendfile(__dirname + '/index.html');
});

然后你写了一个链接:

<a href="pfc.html"

使浏览器要求/pfx.html

您还没有在服务器端代码中写任何内容来告诉它如何响应请求。您只是告诉它如何回复/的请求。

您可以编写类似的内容(application.get('/pfx.html',...)或查找一些现有的中间件来处理静态文件。

答案 1 :(得分:0)

如果您有多个HTML文件,例如pfc.html,则可以使用

application.use(express.static('public'));

并将所有html文件(包括pfc.html)保存在名为public的文件夹中以及您提供的所有html文件中:

<a href="pfc.html"></a>

您可以在public/pfc.html等处查找它们。如果该文件存在,那么应用程序将不会返回Cannot GET /pfc.html之类的内容,您将不需要为所有这些内容编写显式路由。