Questa pagina si applica ad Apigee e Apigee hybrid.
Visualizza la documentazione di Apigee Edge.
Comprendi e gestisci le risorse, come descritto nelle sezioni seguenti.
Informazioni sulle risorse
Molti tipi di criteri si basano sulle risorse. Le risorse sono i file che implementano il codice o la configurazione che deve essere eseguita da un criterio quando è collegato a un proxy API. In alcuni casi, come per JavaScript e JavaCallout, un criterio definisce semplicemente un punto di collegamento in un proxy API in cui deve essere eseguito del codice. Il criterio JavaScript o JavaCallout è un puntatore a una risorsa.
Tipi di risorse
La tabella seguente riassume i tipi di risorse:
Tipo di risorsa | Descrizione |
---|---|
GraphQL (graphql) |
File di schema GraphQL a cui fanno riferimento i criteri di GraphQL. |
JAR (java) |
Classi Java in un file JAR a cui fanno riferimento le norme di JavaCallout. |
JavaScript (js) |
JavaScript a cui fanno riferimento le norme relative a JavaScript. |
JavaScript (jsc) |
JavaScript compilato a cui fanno riferimento le norme relative a JavaScript. |
OpenAPI Specification (oas) |
Specifica OpenAPI utilizzata per convalidare i messaggi di richiesta e risposta di tipo JSON o YAML. |
Property Set (properties) |
Raccolta di coppie chiave-valore a cui può fare riferimento un set di proprietà proxy API. |
Python (py) |
Script Python a cui fanno riferimento i criteri di PythonScript. Le risorse devono essere implementate in "Python puro" (solo nel linguaggio Python). |
Security policy (securityPolicy) |
Norme di sicurezza personalizzate a cui fanno riferimento le norme di JavaCallout. |
WSDL (wsdl) |
File WSDL a cui fanno riferimento i criteri di SOAPMessageValidation. |
XSD (xsd) |
Schemi XML a cui fanno riferimento i criteri di SOAPMessageValidation. |
XSL Transformations (xsl) |
Trasformazioni YAML a cui fanno riferimento i criteri XSLTransform. |
Dove sono archiviate le risorse
Puoi archiviare le risorse nelle località seguenti. Non puoi archiviare i file di risorse in un'organizzazione.
- Revisione proxy API: le risorse sono disponibili solo per le revisioni dei proxy API in cui sono incluse. Ad esempio, potresti includere una risorsa JavaScript con la revisione 1 di un proxy API e poi modificare l'implementazione in modo da utilizzare uno script Python nella revisione 2 del proxy. La revisione 1 ha accesso solo alla risorsa JavaScript, mentre la revisione 2 ha accesso solo alla risorsa Python.
- Ambiente: se archiviate in un ambiente (ad esempio
test
oprod
), le risorse sono disponibili per qualsiasi proxy API di cui è stato eseguito il deployment nello stesso ambiente.
Il repository di ambienti è disponibile al seguente URI, come descritto dall'API List Resource File e più avanti in Gestire le risorse utilizzando l'API:
/organizations/$ORG/environments/$ENV/resourcefiles
La seguente tabella mostra i metodi che puoi utilizzare per creare, aggiornare ed eliminare le risorse per ogni repository:
Repository | Creazione | View | Aggiornamento | Eliminazione | ||||
---|---|---|---|---|---|---|---|---|
API | UI | API | UI | API | UI | API | UI | |
Revisione proxy API | ||||||||
Ambiente |
Ad esempio, tutti i file JavaScript disponibili per l'ambiente test
sono archiviati nel seguente repository e sono disponibili per qualsiasi proxy API in esecuzione nell'ambiente test
:
/organizations/$ORG/environments/test/resourcefiles/jsc
Risoluzione del nome della risorsa
Risolvi i nomi delle risorse dall'ambito più specifico a quello più generale. I nomi delle risorse vengono risolti "più avanti nella catena", dal livello di revisione del proxy API al livello di ambiente.
Supponiamo che tu abbia completato la stessa risorsa in due repository diversi: la revisione del proxy API e l'ambiente prod
.
Considera il proxy API configurato con il seguente criterio:
<Javascript name='PathSetterPolicy' timeLimit='200'> <ResourceURL>jsc://pathSetter.js</ResourceURL> </Javascript>
Il riferimento al criterio non può essere risolto esplicitamente in un repository. La prima risorsa nell'ambito più granulare il cui nome corrisponde al nome della risorsa nel criterio viene risolta.
Di conseguenza, quando viene eseguito il deployment del proxy API nell'ambiente prod
, il criterio verrà risolto nella risorsa pathSetter.js
con ambito ambiente.
Una volta eseguito il deployment nell'ambiente test
, il criterio si risolverà nella risorsa con ambito di revisione del proxy API, perché questa risorsa si trova nell'ambiente prod
, non nell'ambiente test
.
Linee guida per le risorse Java
Puoi aggiungere risorse Java compilate come file JAR utilizzando diverse opzioni in curl, ad esempio l'opzione -T
, --data-binary
o -F
(non l'opzione -d
). Ad esempio:
curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/octet-stream" \ --data-binary @{jar_file}
curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/octet-stream" \ -T "{jar_file}"
curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/octet-stream" \ -F "file=@{jar_file}"
Vedi anche:
- Best practice per Java: best practice per la progettazione e lo sviluppo di proxy API
- Esempio di ricettario Java: criterio per la trasformazione XSL
Gestire le risorse tramite l'interfaccia utente
Gestisci le risorse limitate come ambito a una revisione del proxy API utilizzando l'interfaccia utente, come descritto nelle sezioni seguenti.
Visualizza le risorse tramite l'UI
Nuovo editor proxy
Per visualizzare le risorse utilizzando il nuovo editor proxy:
Se utilizzi l'interfaccia utente di Apigee nella console Cloud: seleziona Sviluppo proxy > Proxy API.
Se utilizzi l'interfaccia utente di Apigee classica: seleziona Sviluppo > Proxy API e, nel riquadro Proxie, seleziona l'ambiente per il proxy di cui vuoi visualizzare le risorse.
Seleziona il proxy API di cui vuoi visualizzare le risorse. Viene visualizzata la vista Panoramica dell'editor proxy.
- Fai clic sulla scheda Sviluppo.
- Nel riquadro a sinistra, scorri verso il basso fino a Risorse. Le risorse attuali sono visualizzate sotto.
Editor proxy classico
Per visualizzare le risorse limitate all'ambito di una revisione del proxy API utilizzando l'editor proxy classico:
- Accedi all'interfaccia utente di Apigee.
- Seleziona Sviluppo > Proxy API nella barra di navigazione a sinistra.
- Seleziona nell'elenco un proxy API per il quale vuoi creare una risorsa.
Si apre l'editor proxy API e, per impostazione predefinita, viene visualizzata la scheda Panoramica. - Fai clic sulla scheda Sviluppo.
- Seleziona la revisione nel menu a discesa Revisione, se necessario.
Le risorse limitate all'ambito della revisione del proxy API sono elencate nella sezione Risorse della visualizzazione Navigatore.
Crea una risorsa utilizzando l'interfaccia utente
Nuovo editor proxy
Per creare una risorsa utilizzando il nuovo editor del proxy:
Se utilizzi l'interfaccia utente di Apigee nella console Cloud: seleziona Sviluppo proxy > Proxy API.
Se utilizzi l'interfaccia utente di Apigee classica: seleziona Sviluppo > Proxy API e, nel riquadro Proxie, seleziona l'ambiente per il proxy di cui vuoi visualizzare le risorse.
Seleziona il proxy API di cui vuoi visualizzare le risorse. Viene visualizzata la vista Panoramica dell'editor proxy.
- Fai clic sulla scheda Sviluppo.
- Nel riquadro a sinistra, scorri verso il basso fino a Risorse e fai clic sul pulsante + alla sua destra.
- Nella finestra di dialogo Aggiungi risorsa, inserisci quanto segue:
- Tipo di risorsa: seleziona il tipo di file per la risorsa.
- In Origine, seleziona Crea un nuovo file o Importa file. Se scegli Importa file, seleziona anche un file da importare nel campo File.
- Nome risorsa: inserisci un nome per la risorsa,
- Fai clic su Aggiungi.
Versione classica di Apigee
Per creare risorse con ambito basato su una revisione del proxy API utilizzando l'interfaccia utente classica di Apigee:
- Visualizza le risorse limitate all'ambito della revisione del proxy API.
- Fai clic su + nella sezione Risorse della visualizzazione Navigatore per aprire la finestra di dialogo Nuova risorsa.
- Inserisci quanto segue:
Campo Descrizione Origine Scegli se creare un nuovo file o importarne uno. Tipo di file Seleziona un tipo di risorsa dall'elenco a discesa. Nome file Nome del file. L'estensione del nome file deve essere valida per il tipo di file selezionato.
Aggiorna una risorsa utilizzando l'UI
Aggiorna una risorsa con ambito a una revisione del proxy API solo se non è stato eseguito il deployment della revisione. Una volta eseguito il deployment, la revisione del proxy API rimane immutabile.
Per aggiornare una risorsa con ambito a una revisione del proxy API utilizzando l'interfaccia utente:
- Visualizza le risorse limitate all'ambito della revisione del proxy API.
- Nella visualizzazione navigatore in Risorse, fai clic sulla risorsa che vuoi aggiornare.
Nota: per i file JAR, posiziona il cursore sulla risorsa che vuoi modificare e fai clic su . - Aggiorna la risorsa, come richiesto.
Nota:dopo aver caricato un nuovo file JAR, fai clic su Aggiorna.
Elimina una risorsa utilizzando l'interfaccia utente
Elimina una risorsa limitata all'ambito di una revisione del proxy API solo se non è stato eseguito il deployment della revisione. Una volta eseguito il deployment, la revisione del proxy API rimane immutabile.
Per eliminare una risorsa con ambito di una revisione del proxy API utilizzando l'interfaccia utente:
- Visualizza le risorse limitate all'ambito della revisione del proxy API.
- Nella visualizzazione Navigatore in Risorse, posiziona il cursore sulla risorsa che vuoi eliminare per visualizzare il menu delle azioni.
- Fai clic su .
- Fai clic su Elimina per confermare l'azione.
Gestisci le risorse utilizzando l'API
Gestisci le risorse utilizzando l'API, come descritto nelle sezioni seguenti.
Creare risorse utilizzando l'API
Crea risorse che hanno come ambito una revisione del proxy API o un ambiente, come descritto nelle sezioni seguenti.
Crea risorse con ambito basato su una revisione del proxy API utilizzando l'API
Crea risorse con ambito basato su una revisione del proxy API utilizzando l'API, come descritto nelle sezioni seguenti.Per creare una risorsa con ambito a una revisione del proxy API utilizzando l'API:
- Crea il file delle risorse.
- Aggiungi il file delle risorse a un pacchetto di configurazione del proxy API.
- Carica il bundle utilizzando una delle seguenti API:
Crea risorse con ambito a un ambiente utilizzando l'API
Crea risorse che abbiano come ambito un ambiente utilizzando l'API inviando una richiesta POST
alla seguente risorsa:
/organizations/$ORG/environments/$ENV/resourcefiles
Trasmetti le seguenti informazioni con la tua richiesta:
- Imposta il parametro di query
name
sul nome della risorsa - Imposta il parametro di query
type
sul tipo di risorsa richiesto - passare i contenuti del file di risorse come
application/octet-stream
omultipart/form-data
)
L'esempio seguente mostra come creare una risorsa JavaScript passandone i contenuti nel corpo della richiesta.
curl -X POST https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles?name=pathSetter.js&type=jsc
-H "Authorization: Bearer $TOKEN" \
-H "Content-type:application/octet-stream" \
-d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");'
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta
Utilizzare curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostazione delle variabili di ambiente per le richieste API Apigee.
L'esempio seguente mostra come caricare la risorsa come file dalla tua macchina locale. È importante utilizzare -F
per il caricamento binario in curl affinché il criterio JavaScript possa accedere ai file JavaScript con ambito a livello di organizzazione o ambiente.
curl -X POST https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles?name=pathSetter.js&type=jsc
-H "Authorization: Bearer $TOKEN" \
-H "Content-type:multipart/form-data" \
-F file=@pathSetter.js
Di seguito è riportato un esempio della risposta:
{ "name" : "pathSetter.js", "type" : "jsc" }
Visualizza le risorse utilizzando l'API
Le seguenti sezioni descrivono come visualizzare le risorse utilizzando l'API.
Visualizza tutte le risorse che utilizzano l'API
Visualizza tutte le risorse limitate a un ambiente utilizzando l'API, come descritto nelle sezioni seguenti.
Utilizzando l'API, puoi visualizzare le risorse limitate all'ambito di un solo ambiente.
Per visualizzare tutte le risorse in un ambiente utilizzando l'API, invia una richiesta GET
alla seguente risorsa:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles
Nell'esempio seguente sono elencate tutte le risorse nell'ambiente test
:
curl -X GET https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles
-H "Authorization: Bearer $TOKEN"
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta
Utilizzare curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostazione delle variabili di ambiente per le richieste API Apigee.
Per saperne di più, consulta la sezione Elenco delle API dei file di risorse dell'ambiente.
Di seguito è riportato un esempio della risposta.
{
"resourceFile": [
{
"name" : "pathSetter.js",
"type" : "jsc"
}
]
}
Visualizzare i contenuti di una risorsa utilizzando l'API
Per visualizzare i contenuti di una risorsa in un ambiente utilizzando l'API, invia una richiesta GET
alla risorsa seguente:
/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
Nell'esempio seguente sono elencati i contenuti del file JavaScript pathSetter.js
(jsc
) nell'ambiente test
:
curl -X GET https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
-H "Authorization: Bearer $TOKEN"
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta
Utilizzare curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostazione delle variabili di ambiente per le richieste API Apigee.
Di seguito è riportato un esempio della risposta:
request.headers["RequestPath"] = context.getVariable("proxy.basepath");
Aggiorna le risorse utilizzando l'API
Aggiorna le risorse che hanno come ambito una revisione del proxy API o un ambiente, come descritto nelle sezioni seguenti.
Aggiorna le risorse limitate all'ambito di una revisione del proxy API utilizzando l'API
Per aggiornare una risorsa con ambito di una revisione del proxy API utilizzando l'API:
- Scarica il bundle di configurazione del proxy API utilizzando l'API proxy API di revisione con le seguenti opzioni:
- Imposta il parametro di query
format
subundle
- Imposta l'intestazione
Accept
suapplication/zip
- Imposta il parametro di query
- Aggiorna il file delle risorse nel pacchetto di configurazione del proxy API.
- Carica il bundle di configurazione del proxy API utilizzando l'API Update API proxy revision.
Aggiorna le risorse con ambito a un ambiente utilizzando l'API
Aggiorna una risorsa il cui ambito è un ambiente utilizzando l'API mediante l'invio di una richiesta PUT
alla risorsa seguente:
/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
Passa i contenuti del file di risorse come application/octet-stream
o multipart/form-data
.
L'esempio seguente mostra come aggiornare una risorsa JavaScript passandone i contenuti nel corpo della richiesta.
curl -X PUT https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
-H "Authorization: Bearer $TOKEN" \
-H "Content-type:application/octet-stream" \
-d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");'
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta
Utilizzare curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostazione delle variabili di ambiente per le richieste API Apigee.
L'esempio seguente mostra come aggiornare il file delle risorse utilizzando un file dalla tua macchina locale. È importante utilizzare -F
per il caricamento binario in curl affinché il criterio JavaScript possa accedere ai file JavaScript con ambito a livello di organizzazione o ambiente.
curl -X PUT https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
-H "Authorization: Bearer $TOKEN" \
-H "Content-type:multipart/form-data" \
-F file=@pathSetter.js
Di seguito è riportato un esempio della risposta:
{ "name" : "pathSetter.js", "type" : "jsc" }
Elimina le risorse utilizzando l'API
Elimina le risorse con ambito a una revisione del proxy API o a un ambiente, come descritto nelle sezioni seguenti.
Elimina le risorse limitate all'ambito di una revisione del proxy API utilizzando l'API
Con il modello ibrido, per eliminare una risorsa con ambito a un proxy API utilizzando l'API:
- Scarica il bundle di configurazione del proxy API utilizzando l'API proxy API di revisione con le seguenti opzioni:
- Imposta il parametro di query
format
subundle
- Imposta l'intestazione
Accept
suapplication/zip
- Imposta il parametro di query
- Elimina il file delle risorse dal pacchetto di configurazione del proxy API.
- Carica il bundle di configurazione del proxy API utilizzando l'API Update API proxy revision.
Elimina una risorsa con ambito a un ambiente utilizzando l'API
Elimina una risorsa con ambito a un ambiente utilizzando l'API, come descritto nelle sezioni seguenti.
Per eliminare una risorsa con ambito a un ambiente utilizzando l'API, invia una richiesta DELETE
alla risorsa seguente:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
L'esempio seguente elimina il file di risorse JavaScript pathSetter.js
dall'ambiente test
:
curl -X DELETE https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/jsc/pathSetter.js \ -H "Authorization: Bearer $TOKEN"
Dove $TOKEN
è impostato sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl
utilizzate in questo esempio, consulta
Utilizzare curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostazione delle variabili di ambiente per le richieste API Apigee.
Per ulteriori informazioni, consulta la sezione Eliminare l'API dei file di risorse.
Di seguito è riportato un esempio della risposta.
{
"name" : "pathSetter.js",
"type" : "jsc"
}
Accedi alla risorsa
La modalità di accesso alla risorsa dipende dal tipo di risorsa. Per saperne di più, consulta la Panoramica dei riferimenti alle norme.
Gli esempi in questa sezione mostrano come creare e gestire una risorsa JavaScript denominata pathSetter.js
per fare riferimento alla risorsa in base a criteri di tipo JavaScript.
Per allegare il codice JavaScript al postFlow della richiesta, crea un criterio denominato
PathSetterPolicy.xml
che faccia riferimento al file pathSetter.js
:
<Javascript name='PathSetterPolicy' timeLimit='200'> <ResourceURL>jsc://pathSetter.js</ResourceURL> </Javascript>
Quindi, fai riferimento al criterio nella configurazione dell'endpoint:
<PostFlow> <Request> <Step><Name>PathSetterPolicy</Name></Step> </Request> <PostFlow>
Per ulteriori informazioni, consulta le norme relative a JavaScript.