added corsheaders

This commit is contained in:
wt
2024-05-27 13:16:51 +07:00
parent 4079d3a6fa
commit ab5389857c
12 changed files with 37 additions and 0 deletions
+2
View File
@@ -20,5 +20,7 @@ add_executable(
src/users/get_all_users.cpp
src/users/get_user.cpp
src/users/change_user.cpp
src/security/cors.cpp
)
target_link_libraries(auth_service jwt-cpp::jwt-cpp)
+1
View File
@@ -2,6 +2,7 @@
// function for authorization users
void auth(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
if (request.body == "") {response.set_content("{\"required\":\"[username,password]\"}", "application/json");return;}
nlohmann::json json_body = nlohmann::json::parse(request.body);
+6
View File
@@ -7,6 +7,10 @@
#include "auth/auth.hpp"
#include "users/users.hpp"
#define CORS_ENABLE
#include "security/cors.hpp"
int main() {
httplib::Server srv;
@@ -19,6 +23,8 @@ int main() {
srv.Post("/api/access", user_access);
srv.Post("/api/users/user/change", change_user);
srv.Options("/api/token", set_cors_headers);
srv.set_mount_point("/admin", "../src/web");
srv.set_mount_point("/js", "../src/web/js");
srv.set_mount_point("/css", "../src/web/css");
+8
View File
@@ -0,0 +1,8 @@
#include "cors.hpp"
void set_cors_headers(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
response.set_header("Access-Control-Allow-Methods", "GET,POST,OPTIONS");
response.set_header("Access-Control-Allow-Headers", "Authorization,X-Custom,Content-Type");
}
+13
View File
@@ -0,0 +1,13 @@
#ifndef CORS_HPP
#define CCORS_HPP
#include <httplib.h>
#ifdef CORS_ENABLE
void set_cors_headers(const httplib::Request& request, httplib::Response& response);
#endif // CORS_ENABLE
#endif // CORS_HPP
+1
View File
@@ -2,6 +2,7 @@
// function for access or reject authorization
void user_access(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
if (request.body == "") {response.set_content("{\"required\":\"[token]\"}", "application/json");return;}
nlohmann::json json_body = nlohmann::json::parse(request.body);
+1
View File
@@ -14,6 +14,7 @@ std::string get_random_string(const char *alphabet, int quantity) {
// function for add user
void add_user(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
if (request.body == "") {response.set_content("{\"required\":\"[token,username,password]\",\"optional\":\"[group,is_superuser]\"}", "application/json");return;}
nlohmann::json json_body = nlohmann::json::parse(request.body);
+1
View File
@@ -2,6 +2,7 @@
// functtion for change password for user
void change_password(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
if (request.body == "") {response.set_content(
"{\"required\":\"[token,old_password,new_password] or if you superuser [token,userid,new_password]\"}",
"application/json"
+1
View File
@@ -1,6 +1,7 @@
#include "users.hpp"
void change_user(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
if (request.body == "") {response.set_content(
"{\"required\":\"[token] or if you superuser [token,userid]\",\"optional\":\"[username,password,is_superuser,group]\"}",
"application/json"
+1
View File
@@ -2,6 +2,7 @@
// function for delete user
void delete_user(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
if (request.body == "") {response.set_content("{\"required\":\"[token] or if you superuser [token,userid]\"}", "application/json");return;}
nlohmann::json json_body = nlohmann::json::parse(request.body);
+1
View File
@@ -2,6 +2,7 @@
// function for get all users data without password
void get_all_users(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
if (request.body == "") {response.set_content("{\"required\":\"[token]\"}", "application/json");return;}
nlohmann::json json_body = nlohmann::json::parse(request.body);
+1
View File
@@ -2,6 +2,7 @@
// function for get user data without password
void get_user(const httplib::Request& request, httplib::Response& response) {
response.set_header("Access-Control-Allow-Origin", "*");
if (request.body == "") {response.set_content("{\"required\":\"[token]\"}", "application/json");return;}
nlohmann::json json_body = nlohmann::json::parse(request.body);