Lade...
 

CX_HTTP_REQUEST::SetParameter

CX_HTTP_REQUEST::SetParameter

184205

Beschreibung:

Diese Methode wird verwendet, um Parameter zu setzen, die entweder per Query-Parameter oder Body-Parameter übergeben werden.
Um explizit Query-Parameter zu setzen, sollte die Methode SetQueryParameter verwendet werden.

Bei SendRequest werden die Parameter, die mit SetParameter gesetzt sind, bevorzugt im Body übertragen und die Parameter, die mit SetQueryParameter gesetzt werden in der Query. Die Parameter werden nur dann im Body übermittelt, wenn folgende Bedingungen zutreffen:

  1. Der Body ist leer
  2. Der Content-Type Header ist entweder nicht gesetzt, oder auf "application/x-www-form-urlencoded" oder "multipart/form-data" gesetzt.

Treffen beide Bedingungen nicht zu, dann werden die Parameter ebenfalls in der Query übertragen, wobei gleichnamige Parameter, die mit SetQueryParameter gesetzt wurden, vorrang haben und die Body-Parameter überschreiben. Ansonsten werden die Parameter mit der Content-Type "application/x-www-form-urlencoded" im Body übertragen.

Wenn ein Parameter auf einen leeren String gesetzt wird, dann wird der Parameter entfernt und wird auch nicht mehr von GetParameterNames zurückgegeben.

Wird ein Parameter mehrfach gesetzt, dann gilt nur der zuletzt gesetzte Parameter. Mehrere Werte für den gleichen Parameter zu übertragen wird nicht unterstützt.

Code-Beispiel:
Var(req) CreateTransObject(CX_HTTP_REQUEST) -> req "http://apihost.com/create/person" req Call(SetURL) "POST" req Call(SetMethod) //Set body parameters to transmit as post data "name" "jimmy" req Call(SetParameter) "age" "12" req Call(SetParameter) req GetManager(WEB_SERVICE) Call(SendRequest)

 

Stack
Stack Position Objekttyp Kurzbeschreibung
Stack(In) Top STRING Parameterwert
  Top-1 STRING Parametername
Stack(Out) Top    
Funktionsaufruf: Call(SetParameter)