Rom*_*kin 5 javascript networking
美好的一天,社区。
接下来的问题是:是否可以在客户端 JavaScript 上运行简单的 HTTP 服务器,该服务器能够接收来自全球网络的请求并以某种方式处理它们?
例如,在 node.js 中,我可以使用以下代码运行服务器:
var http = require('http');
http.createServer().listen(3000, '127.0.0.1');
Run Code Online (Sandbox Code Playgroud)
然后我会让服务器运行在 上127.0.0.1:3000,我想知道是否可以使用常规客户端 JavaScript 来实现类似的功能?
“客户端”和“服务器”的定义是相对的。当节点向客户端发送数据时,它可以是一个服务器;Node 应用程序也可以是另一个服务器的客户端(例如,当您进行 API 调用时)。
\n\n听起来你是在问是否可以在浏览器中使用 JS 创建一个“服务器”。你不能,但那是因为大多数浏览器被设计为仅作为客户端,而不是服务器\xe2\x80\x94,它们只能发出请求,而不能响应它们。特别是,Node 本身连接到系统级套接字,这使其能够成为服务器。浏览器不允许您的 Javascript 代码访问这些系统级套接字,这就是为什么这是不可能的。
\n\n假设,如果他们这样做了,那么您最终会回到 Node。或者重新创建您自己的 Node 版本。
\n\n请注意,您的浏览器中确实有 WebSocket;任何其他“客户端”都可以位于该套接字的“另一侧”。因此,您可以通过这种方式实现基本的客户端/服务器设置,但它无法与其他 HTTP 客户端一起使用。
\n| 归档时间: |
|
| 查看次数: |
1983 次 |
| 最近记录: |