我正在编写一个简单的 Helloworld 示例,可以在 Internet 上随处找到:
[nodejs.php] [位置:localhost/nodejs.php]
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
var http = require('http');
var server = http.createServer(function (request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.end("Hello World\n");
}).listen(8000);
console.log("Server running at http://127.0.0.1:8000/");
</script>
</head>
</html>
代码非常简单易懂。但是,当我尝试运行代码时,出现以下错误:
Uncaught ReferenceError: require is not defined
我了解该消息意味着require()
我的页面中没有此类功能。当然没有。我又翻了很多次谷歌,尝试了不同的教程,看看我是否需要nodejs.js
在网页中嵌入任何类型的文件,但所有教程似乎都没有提到这一点,我尝试进入 Nodejs 文件夹。我发现了很多像edit.js
, adduser.js
, bin.js
... 这样的文件,我被正式卡住了。我一遍又一遍地讨论了 Nodejs 的真正含义,以及为什么这个例子不起作用,但谷歌没有太多的支持。到目前为止,据我了解:
- nodejs 是一个 javascript 工具包,它是事件驱动的、非阻塞 I/O
- nodejs 允许用户使用 javascript 访问后端编码
- nodejs 解析 V8 Google Chrome javascript 引擎
- nodejs 可以创建并发服务器应用程序
- 在我的假设中,nodeJS 是一个框架(它可能是错误的),它连接服务器和客户端以允许后端访问
如果我错了,请纠正我,我真的很感激。我需要对这个主题有更多的了解,而那里的资源并不多。
我的问题是:
- 如果 NodeJS 是一个 javascript 库,我如何将它嵌入到我的网站中?本地主机与在线托管有什么不同吗?
- 我经常看到人们处理listen(8000),端口是什么?我应该选择哪个端口?
- Socket.io 是否与 NodeJS 相同,如何安装(我知道 Socket.io 在 Nodejs 上运行)?带有 NodeJS 的 Socket.io 是否与带有 jQuery 的 jQueryUI 一样抽象?为了将来参考,当我想在 NodeJS 中使用另一个库时,这样做的标准协议是什么?
谢谢大家,
蒂姆。