Lettura di dati memorizzati nel buffer di ricezione del client specificato tramite il suo ID sorgente e la sua porta.
Legge i dati memorizzati nel buffer di ricezione del client specificato tramite il suo IP sorgente e porta senza rimuoverli dopo che sono stati letti.
Questo metodo Peek può essere utilizzato se una certa quantità di dati deve essere disponibile per essere elaborata correttamente e la quantità può essere determinata da parti dei dati (ad esempio, la lunghezza di campo). In questo caso, i dati possono essere copiati nell'applicazione richiamando il metodo Receive.
Il valore UDINT restituito indica il numero di byte scritti nel buffer fornito dall'applicazione.
Considerazioni per connessioni che utilizzano TLS
Il comportamento dei metodi Peek e Receive può essere diverso per le differenti connessioni con e senza TLS, in particolare quando si scambiano grandi pacchetti di dati. Quando si eseguono i metodi su una connessione che utilizza TLS, può essere richiesta l'esecuzione di più chiamate di metodo finché i dati non vengono copiati o spostati nel buffer applicazione. In ogni caso, prima di elaborare i dati, verificare la quantità di dati copiati o spostati e se i dati sono completi.
Ingresso |
Tipo di dati |
Intervallo di valori valido |
Descrizione |
---|---|---|---|
i_sClientIP |
STRING(15) |
- |
Indirizzo IP del client collegato da cui devono essere letti i dati. |
i_uiClientPort |
UINT |
1 ... 65535 |
Porta sorgente del client collegato da cui devono essere letti i dati. |
i_pbyReceiveBuffer |
POINTER TO BYTE |
- |
Indirizzo iniziale del buffer per la scrittura dei dati ricevuti. |
i_udiReceiveBufferSize |
UDINT |
1 ... 2147483647 |
Numero di byte da leggere. NOTA: Il valore non deve essere superiore alle dimensioni del buffer. |
oFB_TCPServer/FB_TCPServer2