#include "shttpsender.h" #include #include #include #include SHttpSender::SHttpSender(QObject * obj) : QObject(obj), socket(new QTcpSocket(this)) { QSqlDatabase db = QSqlDatabase::database("WEB"); QString hostName = db.hostName(); if (hostName == "192.168.0.82") { addr = hostName; port = 8080; } else if (hostName == "192.168.0.30") { addr = "big-bird1.co.kr"; port = 80; } else if (hostName == "182.162.171.147") { addr = "big-bird.co.kr"; port = 80; } else { /* addr = "big-bird.co.kr"; port = 80; */ } connect(socket, SIGNAL(disconnected()), this, SLOT(DisConnected())); connect(socket, SIGNAL(readyRead()), this, SLOT(ReadData())); connect(socket, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(error(QAbstractSocket::SocketError))); //connect(socket, &QTcpSocket::hostFound, [](){ std::cout << "founded"; }); //connect(socket, &QTcpSocket::connected, [](){ std::cout << "connected"; }); socket->connectToHost(QHostAddress(addr), port); socket->waitForConnected(2000); } SHttpSender::~SHttpSender() { socket->close(); delete socket; } void SHttpSender::SendData(int _company_num) { QString strPort = ""; if (port != 80) strPort = ":" + QString::number(static_cast(port)); //std::cout << addr.toStdString() << strPort.toStdString(); QString data; if (port != 80) data = "GET /concepters/filter_actionAtDataUpdateComplete.do?company_num=" + QString::number(_company_num) + " HTTP/1.1\r\n"; else data = "GET /filter_actionAtDataUpdateComplete.do?company_num=" + QString::number(_company_num) + " HTTP/1.1\r\n"; data += "Host: " + addr + strPort + "\r\n" "Connection: keep-alive\r\n" "Cache-Control: max-age=0\r\n" "Upgrade-Insecure-Requests: 1\r\n" "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36\r\n" "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\r\n" "Accept-Encoding: gzip, deflate, sdch\r\n" "Accept-Language: ko-KR,ko;q=0.8,en-US;q=0.6,en;q=0.4\r\n\r\n\r\n"; if(!data.isEmpty()) { socket->write(QString(data + "\n").toUtf8()); //std::cout << data.toStdString(); //std::cout << "sent"; } QTimer::singleShot(5000, this, SLOT(DisConnected())); } void SHttpSender::ReadData() { exit(0); /* QString m_str; while(socket->canReadLine()) { QString str = QString::fromUtf8(socket->readLine()).trimmed(); m_str += str; std::cout << str.toStdString(); } //exit(0); */ } void SHttpSender::error(QAbstractSocket::SocketError error) { exit(0); } void SHttpSender::DisConnected() { exit(0); }