• 1651阅读
  • 3回复

[提问]HTTP发post,fiddler抓不到 [复制链接]

上一主题 下一主题
离线苹小果
 

只看楼主 倒序阅读 楼主  发表于: 2020-04-02
要写一个小工具,通过http连接物联网平台,post的时候,没有返回,fiddler也抓不到,请教各位代码哪里有问题
xynetworktest.cpp
  1. #include "xynetworktest.h"
  2. #include <QDebug>
  3. XYNetWorkTest::XYNetWorkTest(QObject *parent) : QObject(parent)
  4. {
  5.     this->m_network = new QNetworkAccessManager(this);
  6. }
  7. void XYNetWorkTest::testPost(QString appIdAndsecret)\
  8. {
  9.     QSslConfiguration config;
  10.     QNetworkRequest request;
  11.     config.setPeerVerifyMode(QSslSocket::VerifyNone);
  12.     config.setProtocol(QSsl::TlsV1SslV3);
  13.     request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
  14.     request.setUrl(QUrl("https://device.xiangyuniot.com/api"));
  15.     request.setSslConfiguration(config);
  16.     QByteArray postData;
  17.     postData.append(appIdAndsecret);
  18.     QNetworkReply *pReply = m_network->post(request,postData);
  19.     QObject::connect(m_network, &QNetworkAccessManager::finished,this ,&XYNetWorkTest::replyFinished);
  20.     QByteArray encodedString = pReply->readAll();
  21.     qDebug()<<QString(encodedString)<<endl;
  22. }
  23. void XYNetWorkTest::replyFinished(QNetworkReply* reply)
  24. {
  25.     qDebug()<<reply->readAll();
  26. }

xynetworktest.h
  1. #ifndef XYNETWORKTEST_H
  2. #define XYNETWORKTEST_H
  3. #include <QObject>
  4. #include <QNetworkAccessManager>
  5. #include <QFile>
  6. #include <QSsl>
  7. #include <QSslKey>
  8. #include <QSslSocket>
  9. #include <QSslConfiguration>
  10. #include <QSslCertificate>
  11. #include <QSslError>
  12. #include <QUrl>
  13. #include <QNetworkReply>
  14. #include <QNetworkRequest>
  15. #include <QtNetwork>
  16. class XYNetWorkTest : public QObject
  17. {
  18.     Q_OBJECT
  19. public:
  20.     explicit XYNetWorkTest(QObject *parent = nullptr);
  21.     void testPost(QString appIdAndsecret);
  22. signals:
  23. public slots:
  24.     void replyFinished(QNetworkReply *reply);
  25. private:
  26.     QNetworkAccessManager *m_network;
  27. };
  28. #endif // XYNETWORKTEST_H

离线圣域天子

只看该作者 1楼 发表于: 2020-04-02
测试时服务器是装在本机上的吗?
我用 Wireshark如果少一个插件,在本机上是捕不到的。
因为操作系统发现客户端和服务端都在本机时,是不经过网卡的。

或许是这个问题哦,供参考~~~
离线苹小果

只看该作者 2楼 发表于: 2020-04-02
回 圣域天子 的帖子
圣域天子:测试时服务器是装在本机上的吗?
我用 Wireshark如果少一个插件,在本机上是捕不到的。
因为操作系统发现客户端和服务端都在本机时,是不经过网卡的。
或许是这个问题哦,供参考~~~ (2020-04-02 10:13) 

服务器不在本机。用本机的fiddler发http的post,能收到回复。
感谢
离线liulin188

只看该作者 3楼 发表于: 2020-04-02
用HttpAnalyzerStdV7这个抓包
https://wiki.qt.io/Qt_5.12_Release
https://wiki.qt.io/New_Features_in_Qt_5.12
https://wiki.qt.io/Qt_5.12.0_Known_Issues
https://www.qt.io/blog/qt-5.13.2-released
https://www.qt.io/blog/qt-creator-4.10.2-released
https://wiki.qt.io/Qt_5.12_Tools_and_Versions
快速回复
限100 字节
 
上一个 下一个