当我运行server.js和client.js并访问本地主机时,为什么会收到错误的请求?

我是node.js的新手

我正在尝试使用pub / sub faye nodemodule来创build发布/订阅Web应用程序。

我有以下文件和文件夹:我在node_modules文件夹中的依赖项,一个sever.js文件和一个client.js

我的server.js包含以下代码:

var http = require('http'), faye = require('faye'); var server = http.createServer(), bayeux = new faye.NodeAdapter({mount: '/'}); bayeux.attach(server); server.listen(8000); 

至于我的client.js文件,它包含以下代码:

 var faye = require('faye') var client = new faye.Client('http://localhost:8000/'); client.subscribe('/messages', function(message) { alert('Got a message: ' + message.text); }); client.publish('/messages', { text: 'HAI!' }) 

我去我的terminal,并运行节点server.js和节点client.js

当我到我的浏览器并运行localhost:8000时,我得到的只是一个错误的请求。

为什么我得到这个? 我怀疑我没有任何页面显示的东西。 有人可以指出我缺less什么。

谢谢。

你得到这个错误是因为你已经把Faye挂在了/ 。 所以如果你尝试浏览到/ ,服务器需要一个Faye客户端,而不是一个普通的HTTP请求。

有一个浏览器客户端的例子 ,展示了如何与Faye挂载在/faye 。 你也可以在http.createServer()中传入一个request处理程序,以便你在Faye之前处理请求,以防你想要响应这个特定的请求。