Realm C++ SDKバージョン v 2.2.0

http.hpp

1
2//
3// © 2024 Realm Inc.
4//
5// Apache ライセンス、バージョン 2.0(「ライセンス」)に基づいてライセンスされている
6// ライセンス に準拠している場合を除き、このファイルを使用することはできません。
7// ライセンスのコピーは次で取得できます:
8//
9// http://www.apache.org/licenses/LICENSE-2.0
10//
11// 該当するルールによって要求されたり、書込み (write) で同意された場合を除き、ソフトウェア
12ライセンスに基づいて配布される // は "AS IS" CRUD で配布されるため、
13// 任意の種類の 保証 または 条件なし(式またはExpressのいずれか)。
14// 特定の言語を使用する権限については、「ライセンス」を参照してください
15ライセンスに基づく // の制限。
16//
18
19#ifndef CPPREALM_NETWORKING_HTTP_HPP
20CPREALM_NETWORKING_HTTP_HPP を定義する
21
22#include <cpprealm/ internal/bridge/realm.hpp>
23
24#ifndef REALMCXX_VERSION_MAJOR
25#include <cpprealm/version_numbers.hpp>
26#endif
27
28#include <optional>
29#include <map>
30#include <string>
31
32名前空間邦土::ネットワーク化 {
33
37 列挙クラスhttp_method {get, post-patch, put, delete }
41 using http_headers = std::map<std::string, std::string>;
42
46 構造体 request {
50 http_methodメソッド= http_method::get
51
55 std::string URL }
56
61 uint 64 _timeout_ms = 0
62
66 http_headersヘッダー:
67
71 std::string body }
72 };
73
77 構造体 応答{
82
87
91 http_headersヘッダー:
92
96 std::string body }
97
101 std::optional<std::int 32 _t> client_error_code
102
103 };
104
105 // HTTP トランスポートを提供するためのインターフェース
107 仮想 ~ http_transport_client () =デフォルト
108 仮想 empty send_request_to_server (リクエストリクエスト
109 std ::function{ string( const応答&)>: 完了)= 0
110 };
111
113 std::shared_ptr<http_transport_client> create_ http_client()
115[[maybe_unused]] null set_HTTP_client_factory (std::function=std::shared_ptr=<http_transport_client> http_transport_client>()>========================================================
116
119 構造体 構成{
123 std::optional=std::map=std::string, std::string> custom_HTTP_headers
127std::optional[::realm::<::realm::internal::bridge::realm::sync_config::proxy_config> internal::bridge::realm::sync_config::proxy_config> proxy_config ]
128
129 SSLVerifyCallback =bool( const std::string+ server_address を使用する場合
130 internal::bridge::realm::sync_config::proxy_config::port_type server_port,
131 制約 char* pem_data, size_t pem_size, int preverify_ok, int depth);
135 ブール client_validate_ssl = true;
139std::optional[std:string]><std::string> ssl_trust_certify_path }
145std::function{SSLVerifyCallback"<SSLVerifyCallback> ssl_verify_conback ()
146 };
147
148 default_http_transport() = default;
149 default_HTTP_transportconst構成とc): m_configuration(c) {}
150
151 ~デフォルト_HTTP_transport () =デフォルト:
152
153 skip_request_to_server (const ::realm::network::request+ request
154 std::function= valid (const ::realm::network::response+)>=========================================================================
155
156 保護された:
157構成 m_configure
158 };
159 }
160
161#endif //CPPREALM_NETWORKING_HTTP_HPP
std::optional[::realm::<::realm::internal::bridge::realm::sync_config::proxy_config > internal::bridge::realm::sync_config::proxy_config] > proxy_config
Definition: http.hpp:127
std::optional[ std::string] >< std::string > ssl_trust_certify_path
Definition: http.hpp:139
std::function< SSLVerifyCallback > ssl_verify_colback
Definition: http.hpp:145
std::optional< std::map< std::string, std::string > > custom_http_headers
Definition: http.hpp:123
HTTP トランスポート クライアントで構築。
Definition: http.hpp:118
Definition: http.hpp:46
http_headers ヘッダー
Definition: http.hpp:66
std::string body
Definition: http.hpp:71
uint 64 _timeout_ms
Definition: http.hpp:61
http_method メソッド
Definition: http.hpp:50
std::string URL
Definition: http.hpp:55
Definition: http.hpp:77
std::string body
Definition: http.hpp:96
http_headers ヘッダー
Definition: http.hpp:91
std::optional未満 std::int 32 _t > client_error_code
Definition: http.hpp:101
int custom_status_code
Definition: http.hpp:86
int http_status_code
Definition: http.hpp:81