使用postEvent(new QxtWebPageEvent(event->sessionID,event->requestID,DEFAULT_MESSAGE));来向客户端发送应答。
亮点 :
void WebService::indexRequested(QxtWebRequestEvent *event)
{
qDebug() << "Request Headers: ";
QHash::const_iterator i = event->headers.constBegin();
while (i != event->headers.constEnd()) {
qDebug() << i.key() << ": " << i.value();
++i;
}
if (event->method.compare("POST")==0) {
QxtWebContent *myContent = event->content;
qDebug() << "Bytes to read: " << myContent->unreadBytes();
myContent->waitForAllContent();
QByteArray requestContent = myContent->readAll();
qDebug() << "Content: ";
qDebug() << requestContent;
parser->parseSOAP(requestContent);
QString num1 = parser->getNumber1();
QString num2 = parser->getNumber2();
QString sum;
if (num1!="" && num2!="") {
sum.setNum(num1.toInt()+num2.toInt());
QString bodyMessage = buildResponse(sum,"add");
qDebug() << bodyMessage;
postEvent(newQxtWebPageEvent(event->sessionID,
event->requestID,
bodyMessage.toUtf8()));
} else {
QString errorXml = buildResponse("0","add");
postEvent(new QxtWebPageEvent(event->sessionID,
event->requestID,
errorXml.toUtf8()));
}
} else if (event->method.compare("GET")==0) {
postEvent(new QxtWebPageEvent(event->sessionID,
event->requestID,
DEFAULT_MESSAGE));
}
}
乌坎村投票
HxLauncher: Launch Android applications by voice commands