是否可以使用indy客户端连接到远程主机并向本地服务器发送数据。
我尝试了这样的事情,但我没有收到任何东西:
Server:=TIdUDPServer.Create;
Server.OnUDPException:=UDPException;
Server.OnUDPRead:=UDPRead;
Server.Bindings.Add.Port:=10;
Server.Active:=true;
//Server is listening to local IP
Client:=TIdUDPClient.Create;
with Client do begin
Host:= '130.204.159.205'; //My IP
Port:=10;
Send('Hello');
end;
我的目标是创建通过互联网与 UDP 通信的客户端/服务器应用程序
最佳答案
UDP 是一种无连接传输。它不能像 TCP 那样保证数据传输,尤其是在互联网等大型网络上。如果 TIdUDPServer
没有接收数据,则数据包要么没有到达机器,要么在 TIdDUPServer
可以看到它们之前被阻止。使用数据包嗅探器(例如 Wireshark)来验证数据包是否到达 TIdUDPServer
正在监听的 NIC。如果不是,则说明存在网络问题。如果是,则说明存在操作系统问题。
关于Delphi indy 远程主机UDP客户端/服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9905936/