问题标签 [qtnetwork]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - QUdpSocket 发送格式错误的数据包
我正在设置一个 QUdpSocket 广播器。当我在 Wireshark 中查看输出时,它说我的数据包格式错误。检查数据包,似乎它们不是用以太网预告片发出的。我需要自己发出这个,还是你看到另一个问题?我下面的代码略微浓缩。请注意,如果通过交叉电缆连接,我的接收设备(微控制器)确实会看到并响应数据包(如在 wireshark 上看到的)。我想确保我没有格式错误的帧,因此我可以在允许 UDP 流量的交换网络上使用它。
谢谢
和wireshark的输出
注意最后四个字节对应我发送的数据,5A 5A 02 03。
根据谷歌图片搜索,数据包缺少预告片......虽然我不是网络专家,这完全是猜测。
Windows 7 x64、VS2010、QT 4.8-latest x64
c++ - C++ 非 QT 接口和 QtNetwork
我是我学校 RoboCup SSL 的一员,我们尝试在 grSim 模拟器 ( https://github.com/mani-monaj/grSim ) 上模拟整个游戏。
grSim 是一个 Qt 应用程序,所以我使用 Qt Network 库来制作客户端/服务器应用程序并接收 Google protobuf 数据。( https://github.com/rjabaker/WarBots-StrategyTester/tree/master/tester/comm )
我尝试用 SSL-refbox 做同样的事情,我收到数据,但是当我尝试打印数据时它不起作用,所以我试图找出原因..
** 所以我的问题是:我可以使用 Qt Network 库来制作客户端/服务器应用程序并从非 Qt 接口接收数据(SSL- Refbox https://github.com/Hawk777/ssl-refbox/)* *
c++ - 我也应该连接到 QNetworkReply::error() 吗?
我创建了一个 POST 请求并连接到finished()信号:
我希望在 POST 请求完成时收到通知,无论它是失败还是成功。
我在文档中注意到还有一个QNetworkReply::error()信号,我是否也需要连接到它,或者finished()
在所有情况下都会被调用?
qt - 如何将文件上传到盒子?我有卷曲代码
我正在我的应用程序中集成盒子云。我正在使用 Qt 平台。
在盒子文档中,他们说要像这样在 curl 中发布。
在哪里指定 filename 和 folder_id 参数。我尝试过在正文中发帖,但它给出了错误。还请告诉我在哪里发布文件内容。
谢谢。
qt - 将 QHttp 类从 Qt 4 移植到 Qt 5
我在 Qt 4 中创建了一个使用 QHttp 类的应用程序。新的 Qt 5 在 QNetworkAccessManager 类中具有几乎相同的功能,但我需要进行一些调整:
我的一段代码是:
我找到了使用 URL 地址发布消息的 QNetworkRequest 类,但我使用的是在不同端口工作的 http 和 https,所以我还需要设置这个 ConnectionMode(http 或 https)。
有没有办法在 QNetworkRequest 中设置 ConnectionMode?
我有这段代码:
这在 Qt 4 中具有签名:
在 Qt 5 中,我们有:
发布消息(请求+数据)并获得答案(
QIODevice * data
)的新 Qt 5 等效项是什么?
qt - QNetworkReply does not get any headers
I'm coding an application to get information of a device on which I have to send a PUT request like this:
I know the device is working because it starts its process and if I put a sniffer between my PC and the device and I see the response .
485454502F312E3020323030204F4B200D0A or in plain text 'HTTP/1.0 200 OK \r\n'
but when the slotRequestFinished(QNetworkReply* rep)
slot is executed I get no data, no headers and no attributes, and error code 2 (connection closed).
If i execute:
I get and invalid variant object, same for the headers.
How can I get the raw packets of the response? That would be handy for this case.
I also noticed on my sniffer that the connection repeats three times, and sends the request all these times for one only put request; Could that be an issue with the library?
qt - 从 QTcpSocket 读取时为空缓冲区
我正在创建一个简单的线程 TCP 服务器(基于线程财富服务器示例)。我已将 readyRead 信号连接到我的 readCommand 插槽,并确认在我远程登录到我的服务器并发送了一个字符串(后跟 enter)后 readCommand 函数会触发。
一旦我发送字符串 HELLO,下面的函数就会输出“In readCommand”,然后输出“new inBuffer”总是显示为空(“”)。
如果我打印出 tcpSocket->bytesAvailable(),那么当我通过 telnet 发送更多字符时,我会看到越来越多的字符。我只是没有把它们从套接字中取出……上面的代码是从 Fortune Client 示例中复制的,所以我认为它会起作用。我使用 QDataStream 错了吗?
qt - QFtp 不起作用
我觉得我可能在这里遗漏了一些非常容易的东西,但我不知道是什么。我有一个 C++ 函数(使用 Qt 4.7),我需要在其中访问 FTP 服务器上的文件。为此,我进行了以下设置:
当我直接在浏览器中输入源代码时,它会正确显示并显示目录中的所有文件。我在程序的其他地方也有另一个 QFtp 实例(不同的变量名)以相同的方式设置;这样可行。但是,有了这个,它只是将目录解释source
为空并立即跳转到finishThisProcess
. 有什么我想念的吗?谢谢!
编辑:这是 ftp 客户端的另一个实例:
它与另一个相同,除了a)这个尝试访问更远的目录级别,b)我分别声明了用户名和密码,然后手动登录。我尝试了以这种方式给我带来问题的方法,但无济于事。
c++ - 使用 QDataStream 或 QTextStream 或不从 tcpsocket 读取文本行?
我正在创建一个简单的 TCP 服务器,并构建了一个插槽/函数,它从 TCP 套接字上的客户端(telnet 连接)读取传入的文本。我使用了 Fortune 代码示例来帮助我,但不得不删除 QDataStream,因为它没有按预期工作。
我希望我的 readCommand 函数从 telnet 客户端连接收集传入字符,一旦它找到换行符或返回以从输入缓冲区中删除键入的命令,删除 /n 和 /r,将其添加到我的字符串列表(commandList),然后回显命令(单独的功能)。这是我到目前为止所得到的:
在我开始手动剥离 /n 和 /r 等之前,我的直觉告诉我有更好的方法来做到这一点。QTextStream 是要走的路吗?有人可以提供一个简单的(r)替代我想要实现的目标吗?
c++ - 将 qnetworkaccessmanager 连接到插槽
现在我有这个代码:
请求者.h
请求者.cpp
而这个错误:
怎么了?我尝试只使用连接而不是 QObject::connect,但是关于无法将 QNetworkAccessmanager 转换为套接字的错误。