31 using Ptr = std::shared_ptr<WebClientUnity>;
34 static Ptr m_GlobalClient;
41 std::u16string m_BaseAddress;
43 std::map<std::u16string, std::u16string> m_Headers;
44 std::mutex m_HeadersLock;
59 WebClientUnity(CP_SDK_PRIV_TAG_ARG(), std::u16string_view p_BaseAddress, _u::TimeSpan p_TimeOut,
bool p_ForceCacheDiscard);
65 static Ptr
Make(std::u16string_view p_BaseAddress, _u::TimeSpan p_TimeOut,
bool p_ForceCacheDiscard =
false);
70 virtual std::u16string
GetHeader(std::u16string_view p_Name)
override final;
74 virtual void SetHeader(std::u16string_view p_Name, std::u16string_view p_Value)
override final;
77 virtual void RemoveHeader(std::u16string_view p_Name)
override final;
118 std::u16string GetURL(std::u16string_view p_URL);
121 std::u16string SafeURL(std::u16string_view p_URL);
127 void PrepareRequest(_u::UnityWebRequest* p_Request,
bool p_IsDownload);
137 static custom_types::Helpers::Coroutine Coroutine_DoRequest(Ptr p_Self,
138 std::u16string p_DebugName,
139 std::u16string p_HttpMethod,
140 std::u16string p_URL,
142 _u::CancellationToken p_Token,
145 _v::
Action<
float> p_Progress);
virtual void GetAsync(std::u16string_view p_URL, _u::CancellationToken p_Token, _v::CActionRef< WebResponse::Ptr > p_Callback, bool p_DontRetry=false, _v::CActionRef< float > p_Progress=nullptr) override final
Do Async GET query.
virtual void PostAsync(std::u16string_view p_URL, const WebContent::Ptr &p_Content, _u::CancellationToken p_Token, _v::CActionRef< WebResponse::Ptr > p_Callback, bool p_DontRetry=false) override final
Do Async POST query.
virtual void PatchAsync(std::u16string_view p_URL, const WebContent::Ptr &p_Content, _u::CancellationToken p_Token, _v::CActionRef< WebResponse::Ptr > p_Callback, bool p_DontRetry=false) override final
Do Async PATCH query.
virtual void DownloadAsync(std::u16string_view p_URL, _u::CancellationToken p_Token, _v::CActionRef< WebResponse::Ptr > p_Callback, bool p_DontRetry=false, _v::CActionRef< float > p_Progress=nullptr) override final
Do Async GET query.