summaryrefslogtreecommitdiff
path: root/src/HttpServer.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2012-03-20 21:42:09 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2012-03-20 21:42:09 +0900
commitf4e2c7f0603fdb0609bf163ee5ea683a44b98d69 (patch)
tree18227134780ec9417ecc7b24969f35725a377e04 /src/HttpServer.cc
parentf16511012e28d1303e300e695b310d01b6200c2c (diff)
Added JSON-RPC over WebSocket.
Wslay library must be placed under deps/wslay.
Diffstat (limited to 'src/HttpServer.cc')
-rw-r--r--src/HttpServer.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/HttpServer.cc b/src/HttpServer.cc
index e797dbff..b48ecebd 100644
--- a/src/HttpServer.cc
+++ b/src/HttpServer.cc
@@ -212,6 +212,20 @@ void HttpServer::feedResponse(const std::string& status,
socketBuffer_.pushStr(text);
}
+void HttpServer::feedUpgradeResponse(const std::string& protocol,
+ const std::string& headers)
+{
+ std::string header= fmt("HTTP/1.1 101 Switching Protocols\r\n"
+ "Upgrade: %s\r\n"
+ "Connection: Upgrade\r\n"
+ "%s"
+ "\r\n",
+ protocol.c_str(),
+ headers.c_str());
+ A2_LOG_DEBUG(fmt("HTTP Server sends upgrade response:\n%s", header.c_str()));
+ socketBuffer_.pushStr(header);
+}
+
ssize_t HttpServer::sendResponse()
{
return socketBuffer_.send();