J'utilise Delphi 10.0 Seattle.Indy UDP envoyer et répondre des chaînes simples
Je voudrais envoyer des requêtes à un serveur UDP et puis lisez la réponse du serveur, qui est une chaîne simple:
Client side:send('12345')
server side(onread event or whatever):if received string = ('12345') then
send ('jhon|zack|randy')
else disconnect;
La longueur de la chaîne de réponse est variable.
Le serveur fonctionne sur un réseau bien ouvert avec une connexion ouverte (vps dédié). Le client n'est pas le même, il est derrière les routeurs et les réseaux sécurisés (non retransmis).
Jusqu'à présent, je ne peux envoyer la demande du client:
(uc = idUDPclient)
procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin
if uc.Connected =False then
Uc.Connect;
uc.Send('12345');
uc.ReceiveTimeout := 2000;
s:=uc.ReceiveString() ;
ShowMessage(s);
uc.Disconnect
end;
côté serveur (nous = idUDPserver)
procedure TForm1.usUDPRead(AThread:TIdUDPListenerThread;const AData: TIdBytes;ABinding: TIdSocketHandle);
begin
ShowMessage(us.ReceiveString());
if us.ReceiveString() = '12345' then
begin
ShowMessage(us.ReceiveString());
//respond with a string to the client immediately (behind a routers) how ?
end;
Je don Je ne sais pas si TCP est meilleur et comment l'utiliser.
Android sera impliqué.
Quelle est la question? –
http://s19.postimg.org/5qat163eb/SCRS_751.png – Someone