En este blog, aprenderemos cómo generar un token de acceso a través de la API REST con un cuerpo de tipo formulario utilizando el código ABSL en SAP Cloud Application Studio. Primero mostraremos cómo podemos hacer lo mismo usando Postman y luego iremos a los detalles de cómo enviar esta solicitud usando el Código ABSL.
En Postman podemos enviar dicho Cuerpo usando “x-www-form-urlencoded”:
Después de seleccionar este tipo, podemos ingresar la clave y los valores de la siguiente manera o podemos usar «Edición masiva» para mantenerlos en modo masivo:
En lugar de mantener Cuerpo, debemos mantener también Método, Punto final y Autorización (en nuestro ejemplo es Básico):
Además, debemos agregar «Content-Type: application/x-www-form-urlencoded» como parámetro de encabezado:
Una vez que enviemos la solicitud, se generará el token de acceso:
Ahora, podemos implementar la misma solicitud usando SAP Cloud Application Studio. En este sentido, primero deberíamos agregar una nueva «Integración de servicios web externos» a la solución deseada:
En la siguiente pantalla, seleccionamos “REST” como tipo de servicio web y presionamos “Next”:
Luego le damos a Endpoint para generar token de acceso y presionamos “Siguiente”:
Posteriormente, seleccionamos “Crear escenario de comunicación” y determinamos su nombre a través de “Nombre del escenario de comunicación” y presionamos “Siguiente”:
Finalmente, lo revisamos y pulsamos “Finalizar”:
Ahora, podemos mantener el acuerdo de comunicación haciendo clic con el botón derecho en el Escenario de comunicación en SDK y seleccionando «Gestionar acuerdo de comunicación»:
Posteriormente, seremos redirigidos a una pantalla C4C en la que podremos crear un nuevo arreglo de comunicación:
En el siguiente paso, seleccionamos el escenario de comunicación creado en SAP Cloud Application Studio:
Luego, seleccionamos el servicio web creado en SAP Cloud Application Studio:
En la siguiente pantalla, podemos mantener “Método de autenticación” y “Credenciales”:
Ahora, hemos terminado y podemos finalizar y activar el arreglo de comunicación:
Luego, podemos desarrollar una función ASBL para enviar la solicitud y generar el token de acceso. Deberíamos determinar ServiceName y ServiceScenario en función de lo que ya creamos en SAP Cloud Application Studio y luego definir HttpMethod. Debido a que queremos enviar un cuerpo de tipo «Formulario», el tipo de contenido debe ser «aplicación/x-www-form-urlencoded» y la clave y los valores del cuerpo deben estar separados por el signo «&».
Como vemos arriba, debemos usar «WebServiceUtilities.ExecuteRESTServiceWithoutEncoding» para enviar solicitudes de este tipo con un cuerpo de tipo «Formulario» y, después de obtener la respuesta, podemos analizarlo y encontrar el token de acceso.
Podemos usar uno de los siguientes métodos para analizar una picadura en formato JSON:
Cómo analizar una cadena en formato JSON en ABSL
Analizar el formato JSON en ABSL usando Cloud Application Studio
Si depuramos la función, también podemos ver el Token generado:
Como conclusión, ahora podemos desarrollar una función ABSL para generar un token de acceso a través de la API REST con un cuerpo de tipo formulario. Este token puede incluso usarse en otras funciones o enviarse a la interfaz de usuario para cargar, como ejemplo, un Mashup.
Me gustaría solicitarle que comparta sus comentarios o pensamientos en un comentario y siga mi perfil (Mohammad Salmani) para futuras publicaciones.
Si tiene alguna pregunta sobre SAP Cloud Applications Studio, puede hacerla aquí o incluso leer otros blogs a través de este Enlace.
Calle Eloy Gonzalo, 27
Madrid, Madrid.
Código Postal 28010
Paseo de la Reforma 26
Colonia Juárez, Cuauhtémoc
Ciudad de México 06600
Real Cariari
Autopista General Cañas,
San José, SJ 40104
Av. Jorge Basadre 349
San Isidro
Lima, LIM 15073