2013-07-24 62 views
1

後聽它,我得到的頭不錯,但不是數據,女巫後空行(\ r \ n \ r \ n)的 它時,我用這個作爲客戶端同樣的事情:Luasocket TCP停止 r n r n

s.socket_write(h,"test1\r\ntest2\r\n\r\ntest3") -- (not luasocket) 

我看到test1和test2

我試着搞亂setOption功能,但它沒有工作

有沒有什麼辦法可以接收數據?

回答

2

我不知道你所期望的,但默認「模式」是讀取一行,並因爲你的字符串"test1\r\ntest2\r\n\r\ntest3"沒有到底換行,那麼receive通話等待換行符。

通常,在閱讀標題後,您已經知道要閱讀的內容的長度,然後您可以執行s:receive(number_of_bytes_to_read)(至少這是我所做的工作,沒有任何問題)。

+0

謝謝,我已經找到了,我必須使用s:receive(headers.Content-Length)來檢測POST。 – PixelToast