diff options
author | B3n30 <bene_thomas@web.de> | 2017-09-19 03:18:26 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2017-09-18 21:18:26 -0400 |
commit | 28c726f20545744a3052a3e8a0a3bf5ff95a5042 (patch) | |
tree | 496b81a9d2cefbdb3ac2ed12c6525ecd72610c14 /src/web_service/web_backend.h | |
parent | 255fd8768d48f12cbbb18601f54dbc5c344407fb (diff) |
WebService: Verify username and token (#2930)
* WebService: Verify username and token; Log errors in PostJson
* Fixup: added docstrings to the functions
* Webservice: Added Icons to the verification, imrpved error detection in cpr, fixup nits
* fixup: fmt warning
Diffstat (limited to 'src/web_service/web_backend.h')
-rw-r--r-- | src/web_service/web_backend.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/web_service/web_backend.h b/src/web_service/web_backend.h index d17100398..a63c75d13 100644 --- a/src/web_service/web_backend.h +++ b/src/web_service/web_backend.h @@ -4,6 +4,8 @@ #pragma once +#include <functional> +#include <future> #include <string> #include "common/common_types.h" @@ -20,4 +22,18 @@ namespace WebService { void PostJson(const std::string& url, const std::string& data, bool allow_anonymous, const std::string& username = {}, const std::string& token = {}); +/** + * Gets JSON from services.citra-emu.org. + * @param func A function that gets exectued when the json as a string is received + * @param url URL of the services.citra-emu.org endpoint to post data to. + * @param allow_anonymous If true, allow anonymous unauthenticated requests. + * @param username Citra username to use for authentication. + * @param token Citra token to use for authentication. + * @return future that holds the return value T of the func + */ +template <typename T> +std::future<T> GetJson(std::function<T(const std::string&)> func, const std::string& url, + bool allow_anonymous, const std::string& username = {}, + const std::string& token = {}); + } // namespace WebService |