[英]C#-Lua UDP incompatibility (no message received)
我的問題:C#應用程序(.NET 4.6.1)發送的UDP消息未顯示在Lua客戶端(捆綁了LuaSocket的LOVE 0.9.2)中。
發送代碼非常簡單:
UdpClient listener = new UdpClient(port);
listener.Send(bytes, bytes.Length, "client_ip", 1234);
接收代碼也相對簡單:
local socket = require("socket")
local address,port = "server_ip",1234
local udp = socket.udp()
udp:settimeout(0)
udp:setpeername(address,port)
local data,msg_ip,port_nil
function love.update(dt)
repeat
data,msg_ip,port_nil = udp:receive()
if data then
print(data)
elseif msg_ip~="timeout" then
print(msg_ip)
end
until not data
end
正如Michael所說,問題實際上並不是UDP實現中的不兼容性。 我忘了在客戶端Lua代碼中包含udp:setsockname('*',port)
,這是一個完全不同且容易得多的問題。 除非有任何投訴,否則我將保留標題錯誤的問題,以期幫助其他任何被誤導的人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.