System.Net.URLClient.TURLClient.BeginExecute

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function BeginExecute(const ARequestMethod: string; const AURI: TURI; const ASourceStream: TStream = nil;  const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;
function BeginExecute(const AsyncCallbackEvent: TAsyncCallbackEvent; const ARequestMethod: string; const AURI: TURI; const ASourceStream: TStream = nil;  const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;
function BeginExecute(const AsyncCallback: TAsyncCallback; const ARequestMethod: string; const AURI: TURI; const ASourceStream: TStream = nil;  const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;
function BeginExecute(const ARequestMethod: string; const AURIStr: string; const ASourceStream: TStream = nil;  const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;
function BeginExecute(const AsyncCallbackEvent: TAsyncCallbackEvent; const ARequestMethod: string; const AURIStr: string; const ASourceStream: TStream = nil;  const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;
function BeginExecute(const AsyncCallback: TAsyncCallback; const ARequestMethod: string; const AURIStr: string; const ASourceStream: TStream = nil;  const AContentStream: TStream = nil; const AHeaders: TNetHeaders = nil): IAsyncResult; overload;

C++

System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::UnicodeString ARequestMethod, const TURI &AURI, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<TNameValuePair> AHeaders = System::DynamicArray<TNameValuePair>())/* overload */;
System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::Classes::TAsyncProcedureEvent AsyncCallbackEvent, const System::UnicodeString ARequestMethod, const TURI &AURI, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<TNameValuePair> AHeaders = System::DynamicArray<TNameValuePair>())/* overload */;
System::Types::_di_IAsyncResult __fastcall BeginExecute(const System::Classes::_di_TAsyncCallback AsyncCallback, const System::UnicodeString ARequestMethod, const TURI &AURI, System::Classes::TStream* const ASourceStream = (System::Classes::TStream*)(0x0), System::Classes::TStream* const AContentStream = (System::Classes::TStream*)(0x0), const System::DynamicArray<TNameValuePair> AHeaders = System::DynamicArray<TNameValuePair>())/* overload */;
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<TNameValuePair> AHeaders = System::DynamicArray<TNameValuePair>())/* overload */;
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<TNameValuePair> AHeaders = System::DynamicArray<TNameValuePair>())/* overload */;
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<TNameValuePair> AHeaders = System::DynamicArray<TNameValuePair>())/* overload */;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
System.Net.URLClient.pas
System.Net.URLClient.hpp
System.Net.URLClient TURLClient


Beschreibung

Beginnt eine eine asynchrone URL-Anforderung.

Wenn Sie BeginExecute aufrufen, müssen Sie die Daten, die zur Ausführung Ihrer URL-Anforderung benötigt werden, bereitstellen:

  • ARequestMethod ist ein String, der die zu verwendende Anforderungsmethode definiert. Mögliche Anforderungsmethoden hängen vom Protokoll ab.
  • AURI (TURI) oder AURIStr (String) ist ein URI, das die Position der Ressource definiert, die Sie anfordern.
  • ASourceStream (optional) ist ein Stream von Daten, um die Anforderung bereitzustellen.
  • AContentStream (optional) ist ein Stream, um die Daten aufzunehmen, die in der Antwort enthalten sind.
  • AHeaders (optional) ist eine Liste der Header, die in die Anforderung einbezogen werden sollen.
  • AsyncCallback (optional) ist eine Callback-Prozedur, die aufgerufen werden muss, wenn eine Antwort empfangen wird oder die Anforderung fehlschlägt.
  • AsyncCallbackEvent (optional) ist eine Ereignisbehandlungsroutine, die aufgerufen werden muss, wenn eine Antwort empfangen wird, oder eine Anforderung fehlschlägt, wenn AsyncCallback nil ist.

BeginExecute gibt ein Antwortobjekt zurück, das beginnt, asynchron mit den Antwortdaten gefüllt zu werden.

Wenn alle Antwortdaten im Antwortobjekt empfangen werden, wird die Callback-Funktion oder Ereignisbehandlungsroutine aufgerufen und stellt das entsprechende Antwortobjekt als Parameter bereit.

Rufen Sie EndAsyncURL mit dem Ziel-Antwortobjekt als einen Parameter auf, um sicherzustellen, dass die Operation erfolgreich war; EndAsyncURL löst eine Exception aus, wenn während der Anforderung ein Problem aufgetreten ist, wie z. B. eine Zeitüberschreitung.

Sie rufen normalerweise EndAsyncURL in der Callback-Funktion oder Ereignisbehandlungsroutine auf, wenn Sie wissen, dass die Antwortdaten bereits empfangen wurden. Sie können jedoch zu jeder Zeit EndAsyncURL aufrufen, wodurch die Programmausführung solange angehalten wird, bis die Antwortdaten empfangen wurden, indem die asynchrone Anforderung in eine synchrone Anforderung umgewandelt wird.

Siehe auch