provideplatform/provide-abap

Implement ABAP API proxy

fleischr opened this issue · 3 comments

3 different ways to build an API proxy

Code it manually with http client class
-tons of data type tinkering, ABAP doesn't easily serialize JSON/XML into data. requires strong data type declarations everywhere

Use openAPI generator
+open source
+built by the biggest CHAD of open source ABAP (Lars)
+likely works perfectly well when implemented
-node.js version poorly documented, a bit of tinkering with a fork of the project to load into our ABAP dev system
-more of PoC, not sure if it's been used in prod

Build web service consumer in SPROXY
+most battle tested way to consume APIs in ABAP
+/- SAP PO. Not avail to us now. Its standard to most SAP environments, but still kindof sucks
-SOAMANAGER set up if w/o PO. every ABAPer hates that
-SAP relies on SOAP as a common denominator

Class z100085_zcl_proubc_api_sicf in ABAP used for inbound API

IF_HTTP_EXTENSION~HANDLE_REQUEST routes requests

See also this secret gist containing the core concepts we are implementing, from the perspective of the REST API client that calls into SAP for all required methods...

https://gist.github.com/kthomas/99036bce8f3bbb3f6af90bbea7e35790