将服务器响应发送给客户端很方便
server = TCPServer.open 1234
socket = server.accept
socket.puts 'data from server side'
在客户端,curl 在这种情况下
curl -v localhost:1234
* Trying 127.0.0.1... connected
* Connected to localhost (127.0.0.1) port 1234 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.21.4 (universal-apple-darwin11.0) libcurl/7.21.4 OpenSSL/0.9.8r zlib/1.2.5
> Host: localhost:1234
> Accept: */*
>
data from server side
此时,似乎我仍然可以在curl中输入一些东西,所以我假设tcp连接是双向的,我输入
data from the curl client
之后,如何在当前TCPSocket实例中接收来自curl客户端的消息?
我试过了
socket.read
但是没用
最佳答案
像这样的东西会向用户读出问候语,然后等待用户输入。此示例只是将输入回显到服务器端。
server = TCPServer.open(8000)
socket = server.accept
socket.puts 'Hello!' # Prints Hello! to the client
while line = socket.gets
puts line # Prints whatever the client enters on the server's output
end
关于ruby - TCPServer 如何从 Ruby 中的 http 请求接收数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10193044/