NASFAQ/connections/ws/http_handshake.cpp

30 lines
928 B
C++
Raw Normal View History

2022-05-07 14:49:43 +00:00
#include "http_handshake.h"
namespace ws {
namespace http_handshake {
std::string get_sid() {
static const char *POLLING_URL_0 = "https://nasfaq.biz/socket/?EIO=4&transport=polling&t=Ny7z439";
static const char *POLLING_URL_1 = "https://nasfaq.biz/socket/?user=314d0bda-d7f0-4636-aed7-5ea02743604b&EIO=4&transport=polling&t=Ny7z472";
static const char *POLLING_URL_2 = "https://nasfaq.biz/socket/?user=314d0bda-d7f0-4636-aed7-5ea02743604b&EIO=4&transport=polling&t=Ny7z4Bn&sid=";
nlohmann::json json_ret;
std::string sid;
nsfq_http::http_connector::connector c;
/* Start handshake, first result is discarded. */
c.get(POLLING_URL_0);
c.get(POLLING_URL_1);
/* Get session id for websocket. */
json_ret = nlohmann::json::parse(c.get_buffer().substr(1));
sid = json_ret["sid"];
/* Post "40" acknowledgement with sid. */
c.post(POLLING_URL_2 + sid, "40");
return sid;
}
}
}