****************************************************************
* Senden des Requests
CALL METHOD gr_client->send 
EXPORTING
timeout = gd_timeout
EXCEPTIONS
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3
OTHERS = 4.
* Fehlerbehandlung
IF sy-subrc <> 0.
* Ermittlung des Fehlers
CALL METHOD gr_client->get_last_error 
IMPORTING
code = gd_subrc
MESSAGE = gd_errortext.
WRITE: / 'Kommunikationsfehler beim send',
/ 'Fehlercode: ', gd_subrc, 'Fehlernachricht: ',
gd_errortext.
* Ende der Verarbeitung
EXIT.
ENDIF.
****************************************************************
* Empfangen der Ergebnisse
CALL METHOD gr_client->receive 
EXCEPTIONS
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3
OTHERS = 4.
* Fehlerbehandlung
IF sy-subrc <> 0.
CALL METHOD gr_client->get_last_error
IMPORTING
code = gd_subrc
MESSAGE = gd_errortext.
WRITE: / 'Kommunikationsfehler beim receive',
/ 'Fehlercode: ', gd_subrc, 'Fehlernachricht: ',
gd_errortext.
* Ende der Verarbeitung
EXIT.
ENDIF.
****************************************************************
* Ausgabe der Daten
* Header-Daten der bertragung
CALL METHOD gr_client->response->get_header_fields
CHANGING
fields = gt_fields.
* Ausgabe der Header Fields auf Standardliste
ULINE.
WRITE: / 'Header Fields'.
ULINE.
LOOP AT gt_fields INTO gs_field.
WRITE: / 'header_name', gs_field-name,
'header_value', gs_field-value.
ENDLOOP.
* Response-Daten ermitteln aus Response-Objekt
gd_data = gr_client->response->get_cdata( ).
* Einfache Ausgabe
ULINE.
WRITE: /'Data'.
ULINE.
SPLIT gd_data AT '{' INTO TABLE gt_data.
LOOP AT gt_data INTO gs_data.
WRITE: / gs_data.
ENDLOOP.
****************************************************************
* Schlieen der Verbindung
CALL METHOD gr_client->close 
EXCEPTIONS
http_invalid_state = 1
OTHERS = 2.
* Fehlerbehandlung
IF sy-subrc <> 0.
CALL METHOD gr_client->get_last_error
IMPORTING
code = gd_subrc
MESSAGE = gd_errortext.
WRITE: / 'Kommunikationsfehler beim close',
/ 'Fehlercode: ', gd_subrc, 'Fehlernachricht: ',
gd_errortext.
* Ende der Verarbeitung
EXIT.
ENDIF.