Hola Praveen,
Yo también estoy intentando hacer lo mismo. ¿Puedes por favor indicarme los pasos involucrados?
Avalados por :
Hola a todos,
Estoy intentando enviar datos en formato Json a otra aplicación utilizando una llamada a un servicio web.
1. Obtener Token
2. Basado en el token, necesito enviar los datos.
He logrado obtener el token y también enviar los datos utilizando eso.
Aquí está el problema: Mi respuesta después de enviar los datos es 200 & (éxito: VERDADERO)
Pero al revisar la aplicación, solo aparece el archivo y no los datos.
Si hago lo mismo usando Postman, puedo ver los datos allí.
Aquí está mi fragmento de código,
Por favor, sugiere algo....
data: lv_url tipo cadena valor 'https://XXXXXXXXXX?transformation=JSON Ewaybill (Standard)-1.03'.
cl_http_client=>create_by_url(
exporting
url = lv_url " Destino lógico (especificado en la llamada a la función)
importing
client = l_http_client " Abstracción de Cliente HTTP
exceptions
argument_not_found = 1
plugin_not_active = 2
internal_error = 3
others = 4
).
l_http_client->request->set_method( if_http_request=>co_request_method_post ).
l_http_client->request->set_version( if_http_request=>co_protocol_version_1_1 ).
call method l_http_client->request->set_header_field
exporting
name = 'HOST'
value = 'live.encomply.com'.
call method l_http_client->request->set_header_field
exporting
name = 'Authorization'
value = ls_tkn_v.
call method l_http_client->request->set_header_field
exporting
name = 'app-id'
value = 'envoice'.
call method l_http_client->request->set_content_type
exporting
content_type = 'multipart/form-data'.
*********************************Cuerpo
multipart = l_http_client->request->add_multipart( ).
multipart->set_header_field(
name = if_http_header_fields=>content_disposition
value = 'form-data; name="transformation"'
).
* multipart->suppress_content_type( ).
multipart->set_cdata(
data = 'JSON Ewaybill (Standard)-1.03'
).
multipart = l_http_client->request->add_multipart( ).
g_file1_cont = jsondata. "contiene datos en formato json
vari = 'form-data; name="E-waybill-Json"; filename="'.
concatenate vari ex '"' into name.
g_file1_form_data = name .
multipart->set_header_field(
name = if_http_header_fields=>content_disposition
value = g_file1_form_data
).
multipart->set_content_type( 'application/json' ).
multipart = l_http_client->request->add_multipart( ).
lv_len = strlen( jsondata ).
multipart->set_cdata(
data = g_file1_cont
offset = 0
length = lv_len ). "01|XXXXXXXXXXX.... sep: cl_abap_char_utilities=>cr_lf
"PASO-4 : ENVIAR SOLICITUD HTTP
call method l_http_client->send
exceptions
http_communication_failure = 1
http_invalid_state = 2.
"PASO-5 : OBTENER RESPUESTA HTTP
call method l_http_client->receive
exceptions
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3.
"PASO-6 : Leer CÓDIGO DE RESPUESTA HTTP
call method l_http_client->response->get_status
importing
code = l_http_status_code
reason = l_status_text.
data lv_result2 type string.
lv_result2 = l_http_client->response->get_cdata( ).
Por favor, ayúdame...
Saludos,
Hola Praveen,
Yo también estoy intentando hacer lo mismo. ¿Puedes por favor indicarme los pasos involucrados?
Resuelto.
Cuando envío datos a la aplicación, los recibe como charset/utf-8 (no lo estoy configurando), lo cual la aplicación no admite, por lo que han agregado esa funcionalidad y ahora la aplicación puede cargar los datos.
Resuelto.
Cuando envío datos a la aplicación, los recibe como charset/utf-8 (no lo estoy configurando), lo cual la aplicación no admite, por lo que han añadido esa funcionalidad y ahora la aplicación puede cargar los datos.
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute