什么原生的JavaScript方法是能够创build一个服务器?
我是nodejs的新手。 我已经成功地将其安装在我的电脑上(并重新启动)。 我在“ My Documents
目录中创build了一个hello_world.js(我在Windows XP计算机上):
console.log("hello world"); var my_http = require( 'http' ); var my_server = my_http.createServer( ... ) ; ...
我已成功打开Windows命令提示符,cd到My Documents
目录,执行.js文件,并收到“hello world”输出。 我浏览器浏览到正在运行的localhost端口(对于我的实验: http://localhost:1337/
)
但是我有两个基于这个问题的主要问题:
1 – 其中是'http'…我想这是一个模块(?),但我没有在我的nodejs安装目录中find这样一个目录。
2 – http
方法createServer
实际上是如何创build一个服务器的? 原生JavaScript有这样一个方法吗?
node.js标准库是用Javascript和C ++编写的,C ++模块可以通过process.binding
加载到js代码中。 特别是对于http.createServer
,它是http.createServer
的一个包装器,它调用net.Server
,它使用C ++ TCP包装器 。
在这里看到更多的细节。
为了回答第二个问题, createServer
只是创build和填充控件对象,实际的工作是在listen
,它首先创build一个句柄 ,这是第一次实际调用 C ++代码的地方。
1)http是一个内置的节点模块。 你可以在这里阅读它的文档: https : //nodejs.org/api/http.html 。 Node提供了很多开箱即用的模块来协助日常操作(与文件系统交互,发出HTTP请求,创build服务器,处理path等)
2)不确定你的意思是“本机”的JavaScript。 JavaScript只是一种语言。 我想你真的在问运行时环境。 如果您在浏览器中使用JavaScript,则不能启动HTTP服务器。 但Node.js在服务器上运行,所以在这个环境下,它可以做各种你无法在浏览器中使用JavaScript的东西,比如访问文件系统。