c++ - Je ne sais pas combien de données le serveur renvoie. Comment socket_read() de PHP reçoit-il les données complètes ?
淡淡烟草味
淡淡烟草味 2017-05-16 13:09:13
0
1
614

Si les données envoyées par le serveur dépassent toujours le nombre maximum d'octets que le client peut supporter en même temps, comment le client peut-il déterminer que les données reçues sont complètes sans effectuer l'opération socket_read. Quelle quantité de données le serveur renvoie-t-il ? ? Composé de /n. J'ai essayé d'utiliser une boucle while pour lire les données du serveur, mais il y a eu un problème avec l'opération.

淡淡烟草味
淡淡烟草味

répondre à tous(1)
phpcn_u1582

S'il s'agit d'un lien court, utilisez socket_set_nonblock pour définir le lien de socket sur non bloquant, puis exécutez socket_read dans une boucle lorsque la longueur de la valeur de retour est 0, sortez de la boucle et la réception se termine (cette méthode peut provoquer. problèmes dans certains cas).

Il est préférable de spécifier la longueur des données côté serveur afin qu'il n'y ait pas d'erreurs.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal