1

我阅读了 elisp 的网络服务器手册,但我找不到编写套接字侦听服务器。函数“make-network-process”的一些谜题:

  1. 如何绑定服务器?
  2. 如何接受客户端连接并创建一个新的网络进程?
  3. 如何通过新创建的网络进程与客户端进程通信?

有没有关于网络服务器的代码片段?

4

1 回答 1

1

make-network-process将创建一个监听服务器,将其绑定到给定的端口。为此,您只需要:server t在关键字参数中指定。

客户端连接将自动被接受并自动创建新的网络进程。Elisp 代码可以在新连接进入时进行设置,因为process-sentinel在这种情况下会调用该函数。

与客户端的通信是通过在接受客户端连接时创建的网络进程进行的。此过程将像任何其他过程一样使用,即 via process-filter, process-send-string, ...

您可以查看server.el代码(C-h f server-start应该是一个很好的入口点)以获得一个相当简单的示例。

于 2012-12-16T22:46:57.210 回答