Code: Alles auswählen.
CALL METHOD HTTP_CLIENT->REQUEST->SET_HEADER_FIELD
EXPORTING
NAME = 'SOAPAction'
VALUE = 'https://www.abapforum.com/webservices/GetPost'.
ken hat geschrieben:Wie gebe ich die Parameter der Methode bei Abap rüber.
Code: Alles auswählen.
* Parameterfelder
lv_dummy = p_user.
gr_client->request->set_form_field( name = 'usr'
value = lv_dummy ).
ken hat geschrieben: wie kann ich auf Post umstellen.
Code: Alles auswählen.
* POST kein GET
CALL METHOD gr_client->request->set_header_field
EXPORTING
name = '~request_method'
value = 'POST'.
ken hat geschrieben: Über welche Methode oder Parameter kann ich mir das Ergebnis afangen.
Code: Alles auswählen.
* Antwort hohlen
CALL METHOD gr_client->receive
EXCEPTIONS
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3
OTHERS = 4.
IF sy-subrc <> 0.
PERFORM get_last_error USING 'receive'
gr_client
CHANGING gv_rc.
STOP.
ELSE.
CALL METHOD gr_client->response->get_header_fields
CHANGING
fields = gt_fields.
READ TABLE gt_fields INTO gs_fields WITH KEY name = '~status_code'.
IF gs_fields-value(1) <> '2'.
WRITE: / 'Fehler bei get data:', gs_fields-value.
STOP.
ENDIF.
ENDIF.
* Ergebnis hohlen
gv_data = gr_client->response->get_cdata( ).
**********************************************************************
FORM get_last_error USING pv_type TYPE t_char_field
pr_client TYPE REF TO if_http_client
CHANGING pv_rc TYPE sy-subrc.
DATA: lv_dummy TYPE string.
CALL METHOD pr_client->get_last_error
IMPORTING
code = pv_rc
MESSAGE = lv_dummy.
WRITE: / 'communication_error(', pv_type, ')',
/ 'code: ', pv_rc, 'message: ', lv_dummy.
ENDFORM. " GET_LAST_ERROR