Buenas tardes, he realizado un programa para consultar los datos de esta página WEB:
Mi programa es el siguiente:
Pero al ejecutar me sale el siguiente mensaje.
Alguna idea de que puede ser?? He visto que esta URL se ha utilizado en otros lenguajes como java y php y no pide usuario ni contraseña, ni certificado.
Saludos,
Mi programa es el siguiente:
Código:
REPORT ZAPI_X0. DATA: W_HTTP_CLIENT TYPE REF TO if_http_client, wl_url TYPE string, w_result TYPE string. DATA: BEGIN OF gtd_string OCCURS 0, STR TYPE c LENGTH 100, END OF gtd_string. DATA: WA_TEXTO LIKE LINE OF gtd_string. DATA: LV_CANCAM TYPE i, lv_dif TYPE i. * wl_url = 'http://calapi.inadiutorium.cz/api/v0/en/calendars/general-en'. wl_url = 'https://api.sunat.cloud/ruc/10255049611'. * wl_url = 'http://www.sunat.gob.pe/descarga/BueCont/BueCont2.html'. CALL METHOD CL_HTTP_CLIENT=>CREATE_BY_URL EXPORTING URL = WL_URL IMPORTING CLIENT = W_HTTP_CLIENT EXCEPTIONS ARGUMENT_NOT_FOUND = 1 PLUGIN_NOT_ACTIVE = 2 INTERNAL_ERROR = 3 OTHERS = 4 . CALL METHOD W_HTTP_CLIENT->REQUEST->SET_HEADER_FIELD EXPORTING NAME = '~request_method' VALUE = 'GET' . CALL METHOD W_HTTP_CLIENT->REQUEST->SET_HEADER_FIELD EXPORTING NAME = 'Content-Type' VALUE = 'text/xml; charset=utf-8'. CALL METHOD W_HTTP_CLIENT->REQUEST->SET_HEADER_FIELD EXPORTING NAME = 'Accept' VALUE = 'text/xml, text/html'. "STEP-3 : SEND HTTP REQUEST CALL METHOD W_HTTP_CLIENT->SEND EXCEPTIONS HTTP_COMMUNICATION_FAILURE = 1 HTTP_INVALID_STATE = 2. *----------------------------------------------------------------- "STEP-4 : GET HTTP RESPONSE CALL METHOD W_HTTP_CLIENT->RECEIVE EXCEPTIONS HTTP_COMMUNICATION_FAILURE = 1 HTTP_INVALID_STATE = 2 HTTP_PROCESSING_FAILED = 3. DATA: STATUS_TEXT TYPE string, HTTP_STATUS_CODE TYPE I. "STEP-5 : Read HTTP RETURN CODE CALL METHOD W_HTTP_CLIENT->RESPONSE->GET_STATUS IMPORTING CODE = HTTP_STATUS_CODE REASON = STATUS_TEXT. WRITE: / 'HTTP_STATUS_CODE = ', HTTP_STATUS_CODE, / 'STATUS_TEXT = ', STATUS_TEXT. * "STEP-6 : READ RESPONSE DATA CALL METHOD W_HTTP_CLIENT->RESPONSE->GET_CDATA RECEIVING DATA = W_RESULT. * write: W_RESULT. SPLIT w_result AT ',' INTO TABLE GTD_STRING . CLEAR WA_TEXTO. LOOP AT GTD_STRING ASSIGNING FIELD-SYMBOL(<FS_STRING>). "message":"ifd_data_seq[1331] - ifd_id[UC_MNT_CUSTOMER_IFD_RST.2018.2] ifd_seg[UC_MNT_PRC_CUSTOMER_IFD_RST]" IF <FS_STRING>-STR CS 'message'. LV_DIF = LV_CANCAM - SY-FDPOS. WA_TEXTO-STR = <FS_STRING>-STR+SY-FDPOS(LV_DIF). endif. CONCATENATE <FS_STRING>-STR ',' INTO <FS_STRING>-STR. WRITE: / <FS_STRING>-STR. ENDLOOP. *CLEAR lv_resplog.
Pero al ejecutar me sale el siguiente mensaje.
Alguna idea de que puede ser?? He visto que esta URL se ha utilizado en otros lenguajes como java y php y no pide usuario ni contraseña, ni certificado.
Saludos,
Comentario