我想編寫一個簡單的客戶端,它向服務器發送消息並接收響應。我有一臺服務器,當我用telnet測試它時,它會向所有連接的客戶端廣播相同的消息,並將其工作。當我嘗試使用Erlang shell進行操作時,gen_tcp:send將不會發送任何消息,直到關閉套接字爲止。使用gen_tcp的消息:直到套接字關閉才發送發送消息
這就是我想要做的事:
{ok, S} = gen_tcp:connect(IP, Port, []).
gen_tcp:send(S, "Test").
flush().
我可以看到,當我通過看我的telnet客戶端關閉套接字的消息被髮送。
二郎版本:R14B01(專家評審組-5.8.2)
更新
hdima評論說,這可能是錯誤的服務器如何從流中提取的消息。這似乎是我嘗試編寫自己的服務器時客戶端似乎按預期工作的原因。我將嘗試獲取服務器的源代碼。服務器是用Java編寫的。
貌似服務器不知道如何從流中提取消息。你能發佈服務器源代碼嗎? – hdima
@hdima:沒有抱歉,我沒有服務器代碼。 – softarn