【问题标题】:How to connect to a PUSH server via http in Qt5如何在 Qt5 中通过 http 连接到 PUSH 服务器
【发布时间】:2014-06-03 17:23:56
【问题描述】:
【问题讨论】:
标签:
c++
qt
push
qt5
qtnetwork
【解决方案1】:
> How would I use QNetworkAccessManager to connect to an http push server?
<thiago> pEYEd: what HTTP command do you need to send?
> thiago good point. I am not sure. It looks like json https://www.cryptsy.com/pages/pushapi
<thiago> pEYEd: JSON is not an HTTP command
<thiago> try again: what HTTP command do you need to send?
> i know
<thiago> pEYEd: let me try this: have you tried to simply get() the page?
> it looks like POST
> http://pusher.com/docs/client_api_guide/client_connect
<thiago> then use post()
> thiago will it automatically do a persistant connection?
<thiago> pEYEd: what exactly do you need to happen?
<thiago> it will keep giving you data as long as there's data to be given
> but it can't time out
<thiago> once the data ends, the connection may be closed or reused. But you cannot and must not care about it.
<thiago> there's no timeout mechanism in QNAM
> no FIN/ACK unless specified?
<thiago> that's at a much lower level
<thiago> the HTTP request/reply ends when the server says it ends
> the connection can't close. no fin/ack
<thiago> under HTTP/1.1, it ends when the number of bytes specified in Content-Length is reached
<thiago> or the chunked encoding says it's the last chunk
<thiago> if either of those conditions happen, the QNetworkReply signals the end
<thiago> then QNAM can do whatever it wants to the socket
> Thank you!