Серверная Программаклиент-сервер в чате в Lua
local socket = require("socket")
local server = socket.try(socket.bind("*", 1234))
local ip, port = server:getsockname()
while 1 do
local client = server:accept()
client:settimeout(10)
local line, err = client:receive()
print (line)
print("Enter input:")
if not err then client:send(io.read().."\n") end
client:close()
end
Клиентская программа
local host, port = "*", 1234
local socket = require("socket")
local tcp = assert(socket.tcp())
tcp:connect(host, port);
tcp:send("Connection Established\n");
while 1 do
local s, status, partial = tcp:receive()
print(s or partial)
print("Enter input:")
tcp:send(io.read().."\n");
if status == "closed" then break end
end
tcp:close()
Программа сервера может отправить сообщение клиенту, но клиент не может отправить сообщение на сервер. Есть ли способ это сделать .. ??
'tcp: connect (host, port);' требует, чтобы 'host' не был' * '. – hjpotter92
Возможно, вы не отправляете данные через 10 секунд после подключения? – moteus
Можете ли вы более подробно рассказать о том, что именно происходит? Я вижу, сервер может отправлять что-нибудь только при получении некоторых данных с сервера? – Prabhu