System.Net.HttpClient.THTTPClient.BeginExecute
Delphi
function BeginExecute(const ARequest: IHTTPRequest; const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;
function BeginExecute(const AsyncCallback: TAsyncCallback; const ARequest: IHTTPRequest; const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;
function BeginExecute(const AsyncCallbackEvent: TAsyncCallbackEvent; const ARequest: IHTTPRequest; const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;
C++
HIDESBASE System::Types::_di_IAsyncResult __fastcall BeginExecute(const _di_IHTTPRequest ARequest, System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>())/* overload */;
HIDESBASE System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::Classes::_di_TAsyncCallback AsyncCallback, const _di_IHTTPRequest ARequest, System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>())/* overload */;
HIDESBASE System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::Classes::TAsyncProcedureEvent AsyncCallbackEvent, const _di_IHTTPRequest ARequest, System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>())/* overload */;
inline System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::UnicodeString ARequestMethod, const System::Net::Urlclient::TURI &AURI, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>()){ return System::Net::Urlclient::TURLClient::BeginExecute(ARequestMethod, AURI, ASourceStream, AContentStream, AHeaders); }
inline System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::Classes::TAsyncProcedureEvent AsyncCallbackEvent, const System::UnicodeString ARequestMethod, const System::Net::Urlclient::TURI &AURI, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>()){ return System::Net::Urlclient::TURLClient::BeginExecute(AsyncCallbackEvent, ARequestMethod, AURI, ASourceStream, AContentStream, AHeaders); }
inline System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::Classes::_di_TAsyncCallback AsyncCallback, const System::UnicodeString ARequestMethod, const System::Net::Urlclient::TURI &AURI, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>()){ return System::Net::Urlclient::TURLClient::BeginExecute(AsyncCallback, ARequestMethod, AURI, ASourceStream, AContentStream, AHeaders); }
inline System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::UnicodeString ARequestMethod, const System::UnicodeString AURIStr, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>()){ return System::Net::Urlclient::TURLClient::BeginExecute(ARequestMethod, AURIStr, ASourceStream, AContentStream, AHeaders); }
inline System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::Classes::TAsyncProcedureEvent AsyncCallbackEvent, const System::UnicodeString ARequestMethod, const System::UnicodeString AURIStr, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>()){ return System::Net::Urlclient::TURLClient::BeginExecute(AsyncCallbackEvent, ARequestMethod, AURIStr, ASourceStream, AContentStream, AHeaders); }
inline System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::Classes::_di_TAsyncCallback AsyncCallback, const System::UnicodeString ARequestMethod, const System::UnicodeString AURIStr, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<System::Net::Urlclient::TNameValuePair> AHeaders = System::DynamicArray<System::Net::Urlclient::TNameValuePair>()){ return System::Net::Urlclient::TURLClient::BeginExecute(AsyncCallback, ARequestMethod, AURIStr, ASourceStream, AContentStream, AHeaders); }
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | System.Net.HttpClient.pas System.Net.HTTPClient.hpp |
System.Net.HttpClient | THTTPClient |
説明
非同期 HTTP リクエストを開始します。
BeginExecute を呼び出す際、HTTP リクエストを実行するのに必要なデータを提供しなければなりません:
ARequest
は、実行するHTTP リクエストです。AContentStream
(省略可能)は、レスポンスに含まれるデータを保持するストリームです。AHeaders
(省略可能)は、リクエストに含まれるヘッダーのリストです。AsyncCallback
(省略可能)は、レスポンスが受け取られたとき、またはリクエストが失敗した際に呼び出されるコールバック プロシージャです。AsyncCallbackEvent
(省略可能)は、レスポンスが受け取られたとき、またはリクエストが失敗した際に呼び出されるイベント ハンドラです。
BeginExecute は、非同期の結果オブジェクトを返します。これは、応答データを非同期に設定され始めます。OnReceiveData イベントを処理して、レスポンス データのダウンロードの進捗を追跡することができます。
すべてのレスポンス データが非同期結果オブジェクトに受け取られると、コールバック関数またはイベント ハンドラが呼び出され、対応する非同期結果オブジェクトがパラメータとして提供されます。
オペレーションが正常終了したかを確認するために、EndAsyncHTTP をターゲットの非同期結果オブジェクトをパラメータにして呼び出します。リクエストの間に問題があった場合(タイムアウトなど)、EndAsyncHTTP
は例外を発生させます。
通常は、EndAsyncHTTP
を、レスポンス データがすでに受信されていることがわかっている、コールバック関数またはイベント ハンドラの中から呼び出します。しかし、実際には EndAsyncHTTP
をどのタイミングでも呼び出すことができ、プログラムの実行をレスポンス データが受信されるまで止め、効果的に、非同期リクエストを同期リクエストに変えることができます。
関連項目
- System.Net.HttpClient.THTTPClient.BeginDelete
- System.Net.HttpClient.THTTPClient.BeginGet
- System.Net.HttpClient.THTTPClient.BeginGetRange
- System.Net.HttpClient.THTTPClient.BeginHead
- System.Net.HttpClient.THTTPClient.BeginMerge
- System.Net.HttpClient.THTTPClient.BeginMergeAlternative
- System.Net.HttpClient.THTTPClient.BeginOptions
- System.Net.HttpClient.THTTPClient.BeginPatch
- System.Net.HttpClient.THTTPClient.BeginPatchAlternative
- System.Net.HttpClient.THTTPClient.BeginPost
- System.Net.HttpClient.THTTPClient.BeginPut
- System.Net.HttpClient.THTTPClient.BeginTrace