lua 中 socket 通信示例

server.lua

#!/usr/bin/lua

local socket = require("socket")

host, port = "127.0.0.1", 9090

server = assert(socket.bind(host, port))
ack = "ack\n"

while true
do
    print("server: waiting for client connection ...")
    control = assert(server:accept())
    while true
    do
        command, status = control:receive()
        if status == "closed" then
           break
        end
        print(command)
        control:send(ack)       -- 注意:发送的数据必须要有结束符才能发送成功
    end

end

client.lua

#! /usr/bin/lua

local socket = require("socket")
host, port = "127.0.0.1", 9090

client = assert(socket.connect(host, port))

client:send("GET\n")

while true
do
    local s, status, partial = client:receive()
    print(s)
    if status == "closed" then
       break
    end

    client:send("GET\n")
end

client:close()

 

posted @ 2018-05-09 15:27  hbg-rohens  阅读(3388)  评论(1编辑  收藏  举报