前言:
比较遗憾,直接测试h2没有成功,虽然服务器已显示h2服务已启动
本次笔者测试下websocket的服务,仍然是在之前的代码基础上修改
一、修改控制器
修改root.h,添加如下两个方法
C_ATTR(echo, :Local :AutoArgs)
void echo(Context *c);
C_ATTR(ws, :Local :AutoArgs)
void ws(Context *c);
添加与websocket相关的两个方法,
第一个方法直接返回一个操作页面
第二个方法处理websocket服务
root.cpp的实现如下:
void Root::echo(Context *c)
{
qDebug() << Q_FUNC_INFO<<QThread::currentThreadId();
QUrl websocket_url = c->uriFor(actionFor(QStringLiteral("ws")));
websocket_url.setScheme(QStringLiteral("ws"));
c->response()->setBody(
QStringLiteral("<!DOCTYPE html>\n"
"<html lang=\"en\">\n"
"<head>\n"
" <title>WebSocket Echo Client</title>\n"
" <meta charset=\"UTF-8\"