#pragma once #include #include #include #include class CHttpsHandle { public: CHttpsHandle(); ~CHttpsHandle(); public: std::string sendGetRequest(const std::string& url); private: static size_t WriteCallback(void* contents, size_t size, size_t nmemb, void* userp); private: CURL* curl{}; }; class CUtil { public: CUtil() = default; ~CUtil() = default; public: static std::string generateMD5(const std::string& input); static std::string generateRandomNumStr(); static std::string urlEncode(const std::string& str); }; using str_t = std::string; class CTransTool { public: CTransTool() = default; ~CTransTool() = default; public: void set_id(const str_t& id, const str_t& secret_key); std::string combine(const str_t& words, const str_t& from, const str_t& to); private: std::string appid_{}; std::string secret_key_{}; }; struct ConfigInfo { std::string baseUrl; std::string appID; std::string secretID; std::string interval{"1000"}; }; class CConfig { public: CConfig() = default; ~CConfig() = default; public: bool parse_config(ConfigInfo& config, const std::string& config_path = ""); };