国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

php 后臺(tái)發(fā)送消息失敗

markoqiu

實(shí)例一個(gè)Gateway,用text協(xié)議,在代碼里用stream_socket_client去連接,連接成功,但發(fā)不出消息,也不報(bào)錯(cuò)不超時(shí)。但如果用命令行Telnet去連接并發(fā)送,一切正常。請(qǐng)問(wèn)這是什么情況?

3535 2 0
2個(gè)回答

damao

text協(xié)議有特定格式的,需要在請(qǐng)求后面加一個(gè)換行符,代表一個(gè)完整的數(shù)據(jù)包,如果gateway是text協(xié)議,數(shù)據(jù)流里沒(méi)找到換行符,那么就認(rèn)為這個(gè)包不完整,就一直等啊等,不會(huì)觸發(fā)onMessage,感覺(jué)像是沒(méi)收到消息一樣,實(shí)際上是收到了的

telnet 會(huì)車(chē)的時(shí)候是會(huì)加個(gè)換行符然后發(fā)給gateway的,所以沒(méi)問(wèn)題

曾經(jīng)邁過(guò)此坑,希望能幫到你

  • 暫無(wú)評(píng)論
phpcreeper

正如 @damao 所說(shuō),由于客戶端數(shù)據(jù)包不符合text協(xié)議規(guī)定,Protocol::input() 檢測(cè)包長(zhǎng)總是返回0,表現(xiàn)為wokerman服務(wù)端無(wú)限等待直至應(yīng)用層接收緩沖區(qū)長(zhǎng)度超過(guò)默認(rèn)最大包長(zhǎng)度,連接斷開(kāi),無(wú)論表現(xiàn)為哪種情況,最終都無(wú)法觸發(fā) onMessage 回調(diào)。

  • 暫無(wú)評(píng)論
年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??