Pour utiliser des appels REST dans des protos, Oracle APEX est un très bon outil pour générer des services RESTfulaccessibles en cloud.
APEX gère la pagination automatiquement , permet le CORS et utilise le mode d’authentification OAuth2 (support de Authorization Code et Implicit Grant).
All public RESTful Services are automatically CORS enabled, this means any public RESTful Service can be accessed from any web origin via an XMLHttpRequest. For non public (protected) RESTful Services, Resource Handler definitions include a new Origins Allowed field that enables you to include a comma delimited list of other server names that are permitted to make cross origin requests to the RESTful Service.
La définition des services se fait au travers d’un assistant. Un peu de PL/SQL est à prévoir, notamment pour les méthodes PUT et POST, mais rien de sorcier.
Le listener Apex a été renommé Oracle Rest Data Services (ORDS). Tomcat est désormais supporté, ainsi que WLS et Glassfish, bien sur.
Exemples « live » en format JSON (ou CSV) depuis une instance publique:
- Collection avec pagination (https://apex.oracle.com/pls/apex/teamfr/hr/employees/)
- Query sur un ID (nro 7369) (https://apex.oracle.com/pls/apex/teamfr/hr/employees/7369)
Administration des services: https://apex.oracle.com/pls/apex/teamfr/ui/oauth2/clients/
(note : teamfr est le nom de mon instance sur apex.oracle.com)