1

请记住,我对所有这种 javascript/node.js 样式的 HTML 编码都非常陌生。过去,我对 HTML 所做的只是静态/信息样式页面。

我正在尝试创建一个 HTML 网页,该网页将从用户那里获取 xmpp 相关信息(服务器地址、端口、用户 JID、密码、聊天消息、其他用户 JID 等),并将其通过 node.js 服务器路由到 xmpp服务器。最终,我要做的是获取webrtc.io 代码并将其扩展为绑定到 XMPP 服务器上的用户并与之交互。在尝试执行此操作时,我找到了 node-xmpp 模块并将其“安装”(npm install)到我的项目工作目录中的 node_modules 文件夹中。

然后,我创建了一个非常基本的 index.html 文件(文本输入框),它获取用户信息,然后调用 index.html 文件中包含的 javascript 文件中的函数。在 javascript 文件中,我添加了 require 函数/调用const xmpp = require('node-xmpp'),然后添加了var client = new xmpp.Client({[connection settings]});一些基本的节处理程序和其他 xmpp 函数。

然后当我在浏览器中“运行”代码时,甚至在我开始输入信息之前,我看到控制台正在报告错误。起初它们是我编写的 xmpp 函数的错误,所以我将所有内容都注释掉,new xmpp.Client({})只是为了看看它是否可以连接。但是,我会收到一个错误cont xmpp = require('node-xmpp')。那个错误是

未捕获的 ReferenceError:未定义要求(匿名函数)

根据我对所有这些 html/javascript/server 内容的有限理解,我认为正在发生的事情是客户端/浏览器不知道/无法访问 node.js 或 node-xmpp 库。

这是正确的吗?我应该以不同的方式做事吗?是否有任何好的教程/文档可以涵盖这一点?

4

2 回答 2

0

require() 函数未知导致问题。我认为您可能犯了一些错误,包括 node.js。

检查这个`require 'socket.io-client.js'` 不起作用

您可能会找到问题的答案。

于 2012-11-07T02:19:26.223 回答
0

如果我理解您在说什么,那么您正在尝试在浏览器中执行节点代码。节点源代码应该在服务器上执行,而不是在浏览器中。您将拥有两组 JavaScript 文件:提供给浏览器以在浏览器上执行的文件和使用节点实例在服务器上执行的文件。如果我误解了,请告诉我们更多关于您的系统结构的信息。

于 2012-11-07T02:32:29.917 回答