c++ - 不知道服务器返回多大的数据,php的 socket_read()怎么接收完整数据?
淡淡烟草味
淡淡烟草味 2017-05-16 13:09:13
0
1
601

如果服务器发送的数据总是超过了客户端所能承受的一次性接收最大字节数,客户端怎样才能判断接收的数据已经完整而不用再执行socket_read的操作,服务器返回的数据有多个/n组成。尝试过用while循环来读取服务器的数据,但是运行有问题。

淡淡烟草味
淡淡烟草味

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!