Gestione delle risorse

Questa pagina si applica a Apigee e Apigee ibrido.

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 devono essere eseguiti da un criterio quando viene 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 un 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 GraphQL.
JAR (java) Classi Java in un file JAR a cui fanno riferimento i criteri JavaCallout.
JavaScript (js) JavaScript a cui viene fatto riferimento nelle norme JavaScript.
JavaScript (jsc) JavaScript compilato a cui fanno riferimento i criteri 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 è possibile fare riferimento in un set di proprietà del proxy API.
Python (py) Gli script Python a cui fanno riferimento i criteri PythonScript. Le risorse devono essere implementate in "Python puro" (solo nel linguaggio Python).
Security policy (securityPolicy) Criterio di sicurezza personalizzato a cui fanno riferimento i criteri JavaCallout.
WSDL (wsdl) I file WSDL a cui fanno riferimento i criteri SOAPMessageValidation.
XSD (xsd) Schemi XML a cui fanno riferimento i criteri SOAPMessageValidation.
XSL Transformations (xsl) Trasformazioni TCF a cui fanno riferimento i criteri XSLTransform.

Dove vengono archiviate le risorse

Puoi archiviare le risorse nelle seguenti località. Non puoi archiviare i file di risorse in un'organizzazione.

  • Revisione proxy API: le risorse sono disponibili solo per le revisioni del proxy API in cui sono incluse. Ad esempio, potresti includere una risorsa JavaScript con la revisione 1 di un proxy API, quindi modificare l'implementazione per utilizzare uno script Python nella revisione 2 del proxy. La revisione 1 ha accesso solo alla risorsa JavaScript e la revisione 2 ha accesso solo alla risorsa Python.
  • Ambiente: se archiviate in un ambiente (ad esempio test o prod), le risorse sono disponibili per qualsiasi proxy API di cui è stato eseguito il deployment nello stesso ambiente.

Il repository di ambiente è disponibile al seguente URI, come descritto nell'API List resource files e successivamente 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 Elimina
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 dei nomi delle risorse

Risolvi i nomi delle risorse dall'ambito più specifico a quello più generale. I nomi delle risorse vengono risolti "fino alla catena", dal livello di revisione del proxy API a quello di ambiente.

Supponiamo che tu abbia compilato la stessa risorsa in due diversi repository: 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ò risolversi esplicitamente in un repository. Viene risolta la prima risorsa nell'ambito più granulare il cui nome corrisponde al nome della risorsa nel criterio.

Pertanto, quando viene eseguito il deployment del proxy API nell'ambiente prod, il criterio verrà risolto nella risorsa pathSetter.js con ambito dell'ambiente.

Una volta eseguito il deployment nell'ambiente test, il criterio verrà risolto nella risorsa con ambito di revisione del proxy API, perché la risorsa con ambito ambiente si trova nell'ambiente prod, non nell'ambiente test.

Linee guida sulle risorse Java

Puoi aggiungere risorse Java compilate come file JAR utilizzando più opzioni in curl, ad esempio -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:

Gestisci le risorse utilizzando l'interfaccia utente

Gestisci le risorse con una revisione del proxy API utilizzando l'interfaccia utente, come descritto nelle sezioni seguenti.

Visualizza le risorse utilizzando l'interfaccia utente

Nuovo editor proxy

Per visualizzare le risorse utilizzando il nuovo editor proxy:

  1. Se utilizzi la UI di Apigee nella console Cloud: seleziona Sviluppo proxy > Proxy API.

    Se utilizzi la UI di Apigee classica: seleziona Sviluppo > Proxy API e, nel riquadro Proxy, seleziona l'ambiente per il proxy di cui vuoi visualizzare le risorse.

  2. Seleziona il proxy API di cui vuoi visualizzare le risorse. Viene visualizzata la vista Panoramica dell'Editor proxy.

  3. Fai clic sulla scheda Sviluppo.
  4. Nel riquadro a sinistra, scorri verso il basso fino a Risorse. Le risorse attuali sono visualizzate sotto il riquadro.

Editor proxy classico

Per visualizzare le risorse limitate a una revisione del proxy API utilizzando l'editor proxy classico:

  1. Accedi all'UI di Apigee.
  2. Seleziona Develop > API Proxy nella barra di navigazione a sinistra.
  3. 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.
  4. Fai clic sulla scheda Sviluppo.
  5. Seleziona la revisione nel menu a discesa Revisione, se necessario.

    Le risorse con ambito alla revisione del proxy API sono elencate nella sezione Risorse della visualizzazione di navigazione.

Crea una risorsa utilizzando l'interfaccia utente

Nuovo editor proxy

Per creare una risorsa utilizzando il nuovo editor proxy:

  1. Se utilizzi la UI di Apigee nella console Cloud: seleziona Sviluppo proxy > Proxy API.

    Se utilizzi la UI di Apigee classica: seleziona Sviluppo > Proxy API e, nel riquadro Proxy, seleziona l'ambiente per il proxy di cui vuoi visualizzare le risorse.

  2. Seleziona il proxy API di cui vuoi visualizzare le risorse. Viene visualizzata la vista Panoramica dell'Editor proxy.

  3. Fai clic sulla scheda Sviluppo.
  4. Nel riquadro a sinistra, scorri verso il basso fino a Risorse e fai clic sul pulsante + alla sua destra.
  5. 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.
  6. Fai clic su Aggiungi.

Versione classica di Apigee

Per creare risorse con un ambito di revisione del proxy API utilizzando la UI classica di Apigee:

  1. Visualizza le risorse con ambito di revisione del proxy API.
  2. Fai clic su + nella sezione Risorse della visualizzazione di navigazione per aprire la finestra di dialogo Nuova risorsa.
  3. Inserisci quanto segue:
    Campo Descrizione
    Origine Seleziona per creare un nuovo file o importare un file.
    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'interfaccia utente

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 è immutabile.

Per aggiornare una risorsa con ambito a una revisione del proxy API utilizzando l'interfaccia utente:

  1. Visualizza le risorse con ambito di revisione del proxy API.
  2. Nella visualizzazione di navigazione 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 Immagine dell&#39;icona di modifica..
  3. 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 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 è immutabile.

Per eliminare una risorsa con ambito a una revisione del proxy API utilizzando l'interfaccia utente:

  1. Visualizza le risorse con ambito di revisione del proxy API.
  2. Nella visualizzazione di navigazione in Risorse, posiziona il cursore sulla risorsa che desideri eliminare per visualizzare il menu delle azioni.
  3. Fai clic su Immagine dell&#39;icona Elimina..
  4. Fai clic su Elimina per confermare l'azione.

Gestire le risorse utilizzando l'API

Gestisci le risorse utilizzando l'API, come descritto nelle sezioni seguenti.

Creare risorse utilizzando l'API

Crea risorse che abbiano come ambito una revisione del proxy API o un ambiente, come descritto nelle sezioni seguenti.

Crea risorse con ambito a una revisione del proxy API utilizzando l'API

Crea risorse con ambito a 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:

  1. Crea il file della risorsa.
  2. Aggiungi il file di risorsa a un pacchetto di configurazione del proxy API.
  3. Carica il bundle utilizzando una delle seguenti API:

Crea risorse con un ambito di un ambiente utilizzando l'API

Crea risorse con ambito a livello di 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
  • passa i contenuti del file di risorse come application/octet-stream o multipart/form-data)

L'esempio seguente mostra come creare una risorsa JavaScript passandone il contenuto 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 Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostare le 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 dei file binari in curl, affinché i file JavaScript con ambito a livello di ambiente o organizzazione siano accessibili tramite il criterio JavaScript.

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 viene fornito 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.

Visualizzazione di tutte le risorse che utilizzano l'API

Visualizza tutte le risorse con un ambito di un ambiente utilizzando l'API, come descritto nelle sezioni seguenti.

Utilizzando l'API, puoi visualizzare solo le risorse con un ambito specifico.

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 Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostare le variabili di ambiente per le richieste API Apigee.

Per ulteriori informazioni, vedi API dei file di risorse dell'ambiente dell'elenco.

Di seguito viene fornito 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 che utilizza l'API, invia una richiesta GET alla seguente risorsa: /organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME

Nell'esempio seguente sono elencati i contenuti del file JavaScript (jsc) pathSetter.js 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 Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostare le variabili di ambiente per le richieste API Apigee.

Di seguito viene fornito 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 con ambito a una revisione del proxy API utilizzando l'API

Per aggiornare una risorsa il cui ambito è una revisione del proxy API utilizzando l'API:

  1. Scarica il bundle di configurazione del proxy API utilizzando l'opzione Ottieni l'API di revisione del proxy API, con le seguenti opzioni:
    • Imposta il parametro di query format su bundle
    • Imposta l'intestazione Accept su application/zip
  2. Aggiorna il file di risorsa nel pacchetto di configurazione del proxy API.
  3. Carica il bundle di configurazione del proxy API utilizzando l'API Update API proxy review.

Aggiorna le risorse con ambito a un ambiente utilizzando l'API

Aggiorna una risorsa il cui ambito è un ambiente utilizzando l'API inviando una richiesta PUT alla seguente risorsa: /organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME

Passa i contenuti del file della risorsa come application/octet-stream o multipart/form-data.

L'esempio seguente mostra come aggiornare una risorsa JavaScript passandone il contenuto 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 Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostare le variabili di ambiente per le richieste API Apigee.

L'esempio seguente mostra come aggiornare il file di risorse utilizzando un file dalla tua macchina locale. È importante utilizzare -F per il caricamento dei file binari in curl, affinché i file JavaScript con ambito a livello di ambiente o organizzazione siano accessibili tramite il criterio JavaScript.

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 viene fornito un esempio della risposta:

{
  "name" : "pathSetter.js",
  "type" : "jsc"
}

Elimina risorse utilizzando l'API

Elimina la risorsa con ambito a una revisione del proxy API o a un ambiente, come descritto nelle sezioni seguenti.

Elimina le risorse con ambito a una revisione del proxy API utilizzando l'API

Con il modello ibrido, per eliminare una risorsa il cui ambito è un proxy API utilizzando l'API:

  1. Scarica il bundle di configurazione del proxy API utilizzando l'opzione Ottieni l'API di revisione del proxy API, con le seguenti opzioni:
    • Imposta il parametro di query format su bundle
    • Imposta l'intestazione Accept su application/zip
  2. Elimina il file di risorsa dal pacchetto di configurazione del proxy API.
  3. Carica il bundle di configurazione del proxy API utilizzando l'API Update API proxy review.

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 seguente risorsa: https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME

Nell'esempio seguente viene eliminato 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 Utilizzo di curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostare le variabili di ambiente per le richieste API Apigee.

Per saperne di più, consulta la pagina relativa all'API per l'eliminazione dei file di risorse.

Di seguito viene fornito 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 di Riferimento alle norme.

Gli esempi in questa sezione mostrano come creare e gestire una risorsa JavaScript denominata pathSetter.js per consentirne l'utilizzo con criteri di tipo JavaScript.

Per allegare il codice JavaScript a Request PostFlow, 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 JavaScript.