Richiamo di una API utilizzando CORS

CORS (cross origin resource sharing) è una tecnica che permette di effettuare chiamate dal codice in esecuzione in un browser a un server di terze parti (come le API in esecuzione su un). Queste chiamate, per impostazione predefinita, non sono consentite secondo la stessa politica di sicurezza di origine applicata alla sandbox del browser. Senza il supporto CORS, gli sviluppatori Web devono utilizzare tecniche più complesse come i proxy lato server.

Informazioni su questa attività

Nota: il supporto CORS è disponibile solo su DataPower® API Gateway.
I server Gateway supportano CORS per rendere il più semplice possibile per gli sviluppatori web l'utilizzo delle API all'interno delle loro applicazioni web.
CORS è supportata nei seguenti browser:
  • Cromo 3 +
  • Firefox 3.5+
  • Internet Explorer V11o versioni successive
  • Opera 12 +
  • Safari 4 +

Un browser abilitato CORS invia automaticamente una semplice richiesta CORS, composta dalla richiesta originale con l'aggiunta dell'intestazione Origin o una richiesta preflight seguita da una semplice richiesta CORS.

Di seguito è riportato un esempio di richiesta preflight CORS:
OPTIONS /org/env/api/resourceHTTP/1.1
User-Agent: useragent details
Access-Control-Request-Method: GET
Access-Control-Request-Headers: header names
Host: x.xx.xxx.xx
Origin: https://example.com
Accept: */*

Non è necessario creare le richieste CORS da soli, se non per scopi di test o di risoluzione dei problemi.

Una risposta CORS viene ricevuta dal gateway; ad esempio:
HTTP/1.1 200 OK
X-Backside-Transport: FAIL FAIL 
Connection: Keep-Alive
Transfer-Encoding: chunked
Access-Control-Allow-Origin: https://example.com
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers:accept, accept-language, content-type, x-ibm-client-id
Access-Control-Allow-Methods: methods allowed on the resource
Vary: Origin