added CORS

This commit is contained in:
2026-02-16 23:24:31 +01:00
parent 14b8234e77
commit 58d37b51b7
27 changed files with 80 additions and 32 deletions

43
source/json_settings.cpp Normal file
View File

@@ -0,0 +1,43 @@
#include <fstream>
#include "json.hpp"
#include "json_settings.h"
#include "crow/logging.h"
#include "utils.hpp"
using namespace std;
using json = nlohmann::json;
using namespace::AppSettings;
Settings AppSettings::deafult(){
return Settings {
.http_port = 3010,
.db_path = "/var/lib/shadowrun-server/shadowrun.db",
.url = "*"
};
}
Settings AppSettings::load() {
ifstream file(settingsFile);
if (!file.is_open()) {
CROW_LOG_ERROR << "Failed to load settings file" << settingsFile << " Loading default settings";
return AppSettings::deafult();
}
std::stringstream buffer;
buffer << file.rdbuf(); // Read the whole file into the stringstream
std::string fileContents = buffer.str(); // Convert to std::string
auto result = utils::parseJson(fileContents);
if(!result){
CROW_LOG_ERROR << "failed to parse settings file, Loading default settings";
return AppSettings::deafult();
}
try {
return result.value().get<Settings>();
} catch (...) {
CROW_LOG_ERROR << "failed to parse settings file, Loading default settings";
return AppSettings::deafult();
}
}