代码拉取完成,页面将自动刷新
#include "response.h"
#include "httpstatus.h"
#include "log.h"
#include <QDateTime>
Response::Response(QTcpSocket* socket, int http_status_code, QMap<QString, QString>& header):
m_socket(socket),
m_http_status_code(http_status_code),
m_header(header)
{
m_header["Server"] = APPLICATION_IDENTIFIER;
m_header["Date"] = Common::getTimeStampString();
}
void Response::responseHeader()
{
m_socket->write("HTTP/1.0 ");
switch (m_http_status_code)
{
case 200:
m_socket->write(HTTP_STATUS_200);
Log::instance() << HTTP_STATUS_200 << Log::NEWLINE << Log::FLUSH;
break;
case 301:
m_socket->write(HTTP_STATUS_301);
Log::instance() << HTTP_STATUS_301 << Log::NEWLINE << Log::FLUSH;
break;
case 304:
m_socket->write(HTTP_STATUS_304);
Log::instance() << HTTP_STATUS_304 << Log::NEWLINE << Log::FLUSH;
break;
case 403:
m_socket->write(HTTP_STATUS_403);
Log::instance() << HTTP_STATUS_403 << Log::NEWLINE << Log::FLUSH;
break;
case 404:
m_socket->write(HTTP_STATUS_404);
Log::instance() << HTTP_STATUS_404 << Log::NEWLINE << Log::FLUSH;
break;
default:
m_socket->write(QString("%1").arg(m_http_status_code).toLatin1());
}
m_socket->write("\r\n");
QMap<QString, QString>::iterator i;
for(i = m_header.begin(); i != m_header.end(); ++i)
{
m_socket->write(i.key().toLatin1());
m_socket->write(": ");
m_socket->write(i.value().toLatin1());
m_socket->write("\r\n");
}
m_socket->write("\r\n");
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。