mirror of
https://github.com/TES3MP/TES3MP.git
synced 2025-09-29 16:11:37 -04:00
[Master] Fix REST API for old servers
This commit is contained in:
parent
7c87ac80ee
commit
e1766da83c
@ -11,9 +11,9 @@ using namespace std;
|
|||||||
using namespace chrono;
|
using namespace chrono;
|
||||||
using namespace boost::property_tree;
|
using namespace boost::property_tree;
|
||||||
|
|
||||||
static string response201 = "HTTP/1.1 201 Created\r\nContent-Length: 11\r\n\r\n201 Created";
|
static string response201 = "HTTP/1.1 201 Created\r\nContent-Length: 7\r\n\r\nCreated";
|
||||||
static string response202 = "HTTP/1.1 202 Accepted\r\nContent-Length: 12\r\n\r\n202 Accepted";
|
static string response202 = "HTTP/1.1 202 Accepted\r\nContent-Length: 8\r\n\r\nAccepted";
|
||||||
static string response400 = "HTTP/1.1 400 Bad Request\r\nContent-Length: 15\r\n\r\n400 Bad Request";
|
static string response400 = "HTTP/1.1 400 Bad Request\r\nContent-Length: 11\r\n\r\nbad request";
|
||||||
|
|
||||||
inline void ResponseStr(HttpServer::Response &response, string content, string type = "", string code = "200 OK")
|
inline void ResponseStr(HttpServer::Response &response, string content, string type = "", string code = "200 OK")
|
||||||
{
|
{
|
||||||
@ -67,7 +67,7 @@ void RestServer::start()
|
|||||||
stringstream ss;
|
stringstream ss;
|
||||||
ss << "{";
|
ss << "{";
|
||||||
auto addr = request->path_match[1].str();
|
auto addr = request->path_match[1].str();
|
||||||
auto port = (unsigned short)stoi(&(addr[addr.find(':')]));
|
auto port = (unsigned short)stoi(&(addr[addr.find(':')+1]));
|
||||||
queryToStringStream(ss, "server", serverMap->at(RakNet::SystemAddress(addr.c_str(), port)));
|
queryToStringStream(ss, "server", serverMap->at(RakNet::SystemAddress(addr.c_str(), port)));
|
||||||
ss << "}";
|
ss << "}";
|
||||||
ResponseStr(*response, ss.str(), "application/json");
|
ResponseStr(*response, ss.str(), "application/json");
|
||||||
@ -110,7 +110,8 @@ void RestServer::start()
|
|||||||
MasterServer::SServer server;
|
MasterServer::SServer server;
|
||||||
ptreeToServer(pt, server);
|
ptreeToServer(pt, server);
|
||||||
|
|
||||||
unsigned short port = pt.get<unsigned short>("query_port");
|
unsigned short port = pt.get<unsigned short>("port");
|
||||||
|
server.lastUpdate = steady_clock::now();
|
||||||
serverMap->insert({RakNet::SystemAddress(request->remote_endpoint_address.c_str(), port), server});
|
serverMap->insert({RakNet::SystemAddress(request->remote_endpoint_address.c_str(), port), server});
|
||||||
updatedCache = true;
|
updatedCache = true;
|
||||||
|
|
||||||
@ -126,9 +127,9 @@ void RestServer::start()
|
|||||||
//Update query for < 0.6 servers
|
//Update query for < 0.6 servers
|
||||||
httpServer.resource[ServersRegex]["PUT"] = [this](auto response, auto request) {
|
httpServer.resource[ServersRegex]["PUT"] = [this](auto response, auto request) {
|
||||||
auto addr = request->path_match[1].str();
|
auto addr = request->path_match[1].str();
|
||||||
auto port = (unsigned short)stoi(&(addr[addr.find(':')]));
|
auto port = (unsigned short)stoi(&(addr[addr.find(':')+1]));
|
||||||
|
|
||||||
auto query = serverMap->find(RakNet::SystemAddress(addr.c_str(), port));
|
auto query = serverMap->find(RakNet::SystemAddress(request->remote_endpoint_address.c_str(), port));
|
||||||
|
|
||||||
if(query == serverMap->end())
|
if(query == serverMap->end())
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user