Passaggio 6: collega un criterio

Questa pagina si applica ad Apigee e Apigee hybrid.

Visualizza la documentazione di Apigee Edge.

I criteri possono trasformare i formati dei messaggi, imporre controllo dell'accesso, chiamare servizi remoti, autorizzare gli utenti, esaminare i contenuti dei messaggi alla ricerca di potenziali minacce e molto altro ancora. Per ulteriori informazioni, consulta l'articolo Che cos'è un criterio?

Gli endpoint proxy e di destinazione definiscono una pipeline per l'elaborazione dei messaggi di richiesta e risposta, detta flussi di richieste e risposte. I flussi sono fasi sequenziali lungo il percorso di elaborazione delle richieste API. I criteri vengono allegati in diversi punti dei flussi dei messaggi di richiesta e risposta come passaggi di elaborazione.

Nei passaggi seguenti, creerai un nuovo criterio e lo collegherai al proxy API nel flusso di risposta PreFlow per assicurarti che il criterio venga applicato prima che venga eseguita qualsiasi altra elaborazione. Il criterio XMLtoJSON utilizzato in questo tutorial converte il payload del messaggio di risposta dell'API da XML a JSON.

  1. Creare un criterio XMLtoJSON.
    1. Espandi il bundle di proxy API helloworld nella sezione Apigee, posiziona il cursore sulla cartella policies e fai clic su Icona Crea.

      file dell'endpoint di destinazione default.xml nella sezione Apigee

      Viene visualizzata la procedura guidata Crea criteri.

    2. Seleziona Mediazione come categoria della norma.
    3. Seleziona XML to JSON come tipo di criterio.
    4. Inserisci XMLtoJSON come nome del criterio e fai clic su Invio.

      Il criterio viene aggiunto alla cartella /policies per il proxy API nella sezione Apigee e aperto nell'editor.

    5. Modifica il criterio per impostare gli elementi <OutputVariable> e <Source> su response.
      <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
      <XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLtoJSON">
          <DisplayName>XMLtoJSON</DisplayName>
          <Properties/>
          <Format>yahoo</Format>
          <OutputVariable>response</OutputVariable>
          <Source>response</Source>
      </XMLToJSON>
  2. Collega il criterio all'endpoint proxy predefinito.
    1. Espandi la cartella proxies nel bundle proxy API helloworld e fai clic su default.xml per aprire il file nell'editor.
    2. Aggiungi un elemento <Step> che faccia riferimento al criterio XMLtoJSON al flusso <Response> nel proxy API <PreFlow>, come mostrato di seguito.
      <ProxyEndpoint name="default">
         <PreFlow name="PreFlow">
            <Request>
               <Step>
                  <Name>verify-api-key</Name>
               </Step>
               <Step>
                  <Name>remove-query-param-apikey</Name>
               </Step>
               <Step>
                  <Name>impose-quota</Name>
               </Step>
            </Request>
            <Response>
               <Step>
                  <Name>XMLtoJSON</Name>
               </Step>
            </Response>
         </PreFlow>
       ...
      </ProxyEndpoint>
  3. Per eseguire nuovamente il deployment dell'ambiente, posiziona il cursore sulla cartella dell'ambiente dev nella sezione Apigee e fai clic su Icona di deployment.

    L&#39;icona di deployment viene visualizzata quando posizioni il cursore sulla cartella dell&#39;ambiente di sviluppo

  4. Quando ti viene chiesto di selezionare un bundle di test da esportare, fai clic su Esegui il deployment senza un bundle di test perché il bundle di test è già stato esportato.

    Richiesta di esportare il bundle di test

  5. Chiama l'API nella scheda Terminale.
    curl localhost:8998/helloworld?apikey=ZQA5euYtNeJ7ZCGCJMpvd6F2BZOmxOzY

    La risposta XML viene convertita in JSON, nel seguente modo:

    {
      "root": {
        "city": "San Jose",
        "firstName": "John",
        "lastName": "Doe",
        "state": "CA"
      }
    }

Complimenti! Hai associato il criterio XMLtoJSON al proxy API.

Successivamente, eseguirai il deployment dell'API come archivio in un ambiente Apigee per i test di integrazione e la release di produzione.

1 2 3 4 5 6 {