diff options
| author | Aotrix <[email protected]> | 2025-03-08 19:37:21 +0100 |
|---|---|---|
| committer | Aotrix <[email protected]> | 2025-03-08 19:37:21 +0100 |
| commit | 61425111dc8ac7aca986d87b524d7d4647306e2d (patch) | |
| tree | 5f0aeb61c5baedafa6d8a90dc2003e4fb54650de /include | |
| parent | df9887c3887f77f23550a0f02ad5716a0c017993 (diff) | |
added API handler class
Diffstat (limited to 'include')
| -rw-r--r-- | include/hearthstoneAPIHandler.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/include/hearthstoneAPIHandler.h b/include/hearthstoneAPIHandler.h new file mode 100644 index 0000000..718b98c --- /dev/null +++ b/include/hearthstoneAPIHandler.h @@ -0,0 +1,29 @@ +#pragma once +#include <chrono> +#include <string> + +class HearthstoneAPIHandler { + public: + HearthstoneAPIHandler(); + void get_cards(const std::string &t_card_parameters); + + private: + static size_t curl_callback_token_request(void *t_contents, size_t t_size, + size_t t_nmemb, std::string *t_s); + std::chrono::hours get_current_time(); + std::string extract_string_with_regex(const std::string &t_str, + const std::string t_regex); + void write_new_token_info_to_file(const std::string &file_path); + void refresh_token_if_needed(); + std::string get_valid_token(); + std::string generate_request_header(); + const std::string get_url(const std::string &t_parameters); + const std::string + get_set_of_cards_url(const std::string &t_card_parameters); + void make_api_request(const char *t_url, const char *t_header); + void make_api_request(const std::string &t_url, + const std::string &t_header); + + std::string m_access_token; + std::string m_header; +}; |
