码迷,mamicode.com
首页 > Web开发 > 详细

Simple http post request demo

时间:2017-01-22 13:28:07      阅读:281      评论:0      收藏:0      [点我收藏+]

标签:dem   his   name   append   end   this   access   sign   agent   

 1 // httppostdemo.h
 2 #ifndef HTTPPOSTDEMO_H
 3 #define HTTPPOSTDEMO_H
 4 
 5 #include <QMainWindow>
 6 #include <QNetworkAccessManager>
 7 #include <QNetworkReply>
 8 
 9 namespace Ui {
10 class HttpPostDemo;
11 }
12 
13 class HttpPostDemo : public QMainWindow
14 {
15     Q_OBJECT
16 
17 public:
18     explicit HttpPostDemo(QWidget *parent = 0);
19     ~HttpPostDemo();
20 
21 private slots:
22     void on_pushButton_clicked();
23     void slotFinished(QNetworkReply *reply);
24 
25 private:
26     Ui::HttpPostDemo *ui;
27     QNetworkAccessManager *m_manager;
28 };
29 
30 #endif // HTTPPOSTDEMO_H
 1 // httppostdemo.cpp
 2 #include "httppostdemo.h"
 3 #include "ui_httppostdemo.h"
 4 
 5 #include <QDebug>
 6 #include <QNetworkRequest>
 7 
 8 HttpPostDemo::HttpPostDemo(QWidget *parent) :
 9     QMainWindow(parent),
10     ui(new Ui::HttpPostDemo)
11 {
12     ui->setupUi(this);
13 
14     m_manager = new QNetworkAccessManager(this);
15     connect(m_manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(slotFinished(QNetworkReply*)));
16 }
17 
18 HttpPostDemo::~HttpPostDemo()
19 {
20     delete ui;
21 }
22 
23 void HttpPostDemo::slotFinished(QNetworkReply *reply)
24 {
25     qDebug() << reply->readAll();
26 }
27 
28 void HttpPostDemo::on_pushButton_clicked()
29 {
30     QNetworkRequest *req = new QNetworkRequest();
31     req->setUrl(QUrl("http://zc.7k7k.com/post_login"));
32     req->setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlencoded; charset=UTF-8");
33     req->setRawHeader("Accept","application/json, text/javascript, */*; q=0.01");
34     req->setRawHeader("Accept-Language","zh-CN,zh;q=0.8");
35     req->setRawHeader("X-Requested-With","XMLHttpRequest");
36     req->setRawHeader("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36");
37     req->setRawHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
38     // req->setRawHeader("Accept-Encoding","gzip,deflate");
39     req->setRawHeader("Host","zc.7k7k.com");
40     req->setRawHeader("Connection","Keep-Alive");
41     req->setRawHeader("Cache-Control","no-cache");
42     QByteArray data;
43     data.append("username=username&password=password&autologin=checked&rf=http://www.7k7k.com/#bottom");
44     m_manager->post(*req, data);
45 }
 1 // main.cpp
 2 #include "httppostdemo.h"
 3 #include <QApplication>
 4 
 5 int main(int argc, char *argv[])
 6 {
 7     QApplication a(argc, argv);
 8     HttpPostDemo w;
 9     w.show();
10 
11     return a.exec();
12 }

Simple http post request demo

标签:dem   his   name   append   end   this   access   sign   agent   

原文地址:http://www.cnblogs.com/yqzhpt/p/6339872.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!