Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
Martedì 30 agosto 2016 abbiamo rilasciato una nuova versione di Apigee Edge for Public Cloud.
Nuove funzionalità e aggiornamenti
Di seguito sono riportate le nuove funzionalità e gli aggiornamenti di questa release.
Payload JSON in Assegna messaggio e genera errore
Con questo miglioramento, non sono necessarie soluzioni alternative per garantire la corretta formattazione dei messaggi JSON e le variabili possono essere specificate utilizzando le parentesi graffe senza creare un JSON non valido. Ad esempio, il seguente inserisce il valore di message.content nel messaggio JSON:
<Payload contentType="application/json">{"message" : "{message.content}"}</Payload>
Se hai utilizzato una soluzione alternativa, il codice continuerà a funzionare così com'è. Puoi anche utilizzare variablePrefix e variableSuffix anziché le parentesi graffe per indicare le variabili.
Consulta l'elemento <Set><Payload> nella norma Assign Message e nella norma Raise Fault nei documenti di riferimento. (APIRT-1160)
Miglioramenti delle policy da XML a JSON
La policy XML to JSON è stata migliorata con le seguenti funzionalità. Puoi configurare i criteri in modo che:
- Considera alcuni elementi XML come array durante la conversione, inserendo i valori tra parentesi quadre "[ ]" nel documento JSON.
- Rimuovi o elimina i livelli della gerarchia del documento XML nel documento JSON finale.
Per ulteriori informazioni, consulta XML to JSON policy. (APIRT-1144)
Più caratteri jolly nei percorsi delle risorse del prodotto API
Quando definisci i percorsi delle risorse nel prodotto API, puoi includere caratteri jolly in più posizioni di un percorso della risorsa. Ad esempio, /team/*/invoices/** consente chiamate API con qualsiasi
valore dopo /team e qualsiasi percorso delle risorse
dopo invoices/. Un URI consentito in una chiamata API
sarebbe proxyBasePath/team/finance/invoices/company/a.
Se dopo questa release i percorsi delle risorse del prodotto API esistenti smettono di funzionare come previsto, imposta
la seguente proprietà nella tua organizzazione per ripristinare il comportamento
precedente: features.enableStandardWildCardMatchForAPIProductResources = true
(MGMT-3273)
Funzioni di crittografia in JavaScript
È disponibile un nuovo insieme di funzioni JavaScript crypto ad alte prestazioni
per creare, ottenere e aggiornare i seguenti oggetti hash: MD5, SHA-1, SHA256, SHA512.
L'oggetto crypto consente anche di ottenere la data in vari formati. Per maggiori informazioni, vedi Modello oggetto JavaScript.
(APIRT-2886)
Controllo della versione JAR del callout Java
Quando carichi una risorsa JAR Java in un proxy API, viene restituito un codice di stato HTTP 400 (anziché 500) se la versione della risorsa Java non è compatibile con la versione di Java supportata da Edge, elencata in Software supportato e versioni supportate. (MGMT-3420)
Convalida delle risorse del proxy API
Quando hai file di risorse proxy API (come JAR JavaScript o Java) archiviati nell'ambito dell'ambiente o dell'organizzazione, il framework di convalida non richiede più di includere queste risorse anche a livello di proxy API in un bundle proxy per superare la convalida. La convalida delle risorse ora viene eseguita al momento del deployment, non dell'importazione. (MGMT-1430)
Configurare il timeout per singoli proxy API
Puoi configurare i proxy API in modo che si verifichi il timeout dopo un periodo di tempo specificato (con uno stato di timeout del gateway 504). Il caso d'uso principale è per i clienti di Private Cloud che hanno proxy API che richiedono
più tempo per l'esecuzione. Ad esempio, supponiamo che tu abbia bisogno di proxy specifici per il timeout a 3 minuti. Puoi
utilizzare una nuova proprietà api.timeout nella configurazione di un proxy API. Ecco come
fare con l'esempio di 3 minuti:
- Innanzitutto, assicurati di configurare il bilanciatore del carico, il router e il processore di messaggi in modo che il timeout scada dopo 3 minuti.
- Quindi, configura i proxy pertinenti in modo che scadano dopo 3 minuti. Specifica il valore in
millisecondi. Ad esempio:
<ProxyEndpoint name="default"> <HTTPProxyConnection> <BasePath>/v1/weather</BasePath> <Properties> <!-- api.timeout is in milliseconeds --> <Property name="api.timeout">180000</Property> </Properties> ... - Tieni presente, tuttavia, che l'aumento dei timeout di sistema potrebbe causare problemi di prestazioni, perché
tutti i proxy senza un'impostazione api.timeout utilizzano i nuovi timeout più elevati di bilanciamento del carico, router e
processore di messaggi. Pertanto, configura altri proxy API che non richiedono timeout più lunghi
per utilizzare timeout più brevi. Ad esempio, il seguente imposta il timeout di un proxy API dopo 1
minuto:
<Property name="api.timeout">60000</Property>
I clienti cloud, che non possono modificare i timeout di Edge, possono anche configurare un timeout del proxy API, a condizione che il timeout sia inferiore al timeout standard del processore di messaggi Edge di 57 secondi.
Non puoi compilare il valore con una variabile. Questa proprietà è trattata nella Guida di riferimento alle proprietà degli endpoint. (APIRT-1778)
Policy TLS/SSL per la registrazione dei messaggi
<KeyStore> e <TrustStore> possono essere impostati nella configurazione SSLInfo dei criteri di registrazione dei messaggi, consentendo TLS/SSL unidirezionale e bidirezionale con un servizio di logging. Configura SSLInfo nel criterio di logging dei messaggi allo stesso modo in cui lo faresti in un
TargetEndpoint proxy. Tuttavia, TLS/SSL di Message Logging supporta solo il protocollo TCP.
(APIRT-1858)
Bug corretti
In questa release sono stati corretti i seguenti bug. Questo elenco è destinato principalmente agli utenti che vogliono verificare se i loro ticket di assistenza sono stati risolti. Non è progettato per fornire informazioni dettagliate per tutti gli utenti.
| ID problema | Descrizione |
|---|---|
| SECENG-609 | Chiamate di runtime che non hanno esito negativo durante l'eliminazione dell'archivio attendibile associato o quando viene eliminato il certificato valido nell'archivio attendibile |
| MGMT-3404 | La visualizzazione/il recupero dei log di Node.js e il deployment dei proxy sono molto lenti |
| MGMT-3400 | La chiamata all'API di gestione /userroles non va a buon fine se il nome dell'utente che la effettua contiene il segno "+" |
| MGMT-3368 | java.lang.ArrayIndexOutOfBoundsException: 1, durante l'importazione di un bundle proxy API che contiene la directory resources/node/resources |
| MGMT-3364 | OAuthV2: redirect_uri check |
| MGMT-3319 | L'elenco delle voci in un vault che contiene un valore nullo in una delle voci non funziona per le organizzazioni (CPS e non CPS) |
| MGMT-3226 | L'esecuzione di query a livello di organizzazione/ambiente non deve estrarre tutti i dati causando l'errore dell'API La release 160302 presentava un bug per cui l'elenco delle risorse a livello di organizzazione/ambiente non riusciva se le dimensioni cumulative delle risorse superavano i 16 MB. Questa correzione risolve il problema. |
| AXAPP-2429 | L'API Analytics che utilizza response_status_code restituisce un errore di accesso ai dati |
| AXAPP-2386 | Correggere i contenuti dei report vuoti nei report email giornalieri di Analytics |
| AXAPP-2347 | Non ricevo le email di riepilogo giornaliero di Analytics |
| APIRT-3141 | I callout Java non riescono a chiamare new ExecutionResult() perché il costruttore è stato reso privato |
| APIRT-3140 | Norme relative ai callout di servizio non funzionanti nelle chiamate API HEAD |
| APIRT-3131 | createdBy errato mostrato per un proxy API quando si utilizza la monetizzazione con un provider di autenticazione esterno |
| APIRT-3121 | La modifica apportata al file delle risorse dell'organizzazione non è efficace al 100% |
| APIRT-3117 | MP ha raggiunto il 100% di utilizzo della CPU e ha interrotto la gestione del traffico |
| APIRT-3016 | Errori "Chiamata scaduta" del router nei deployment |
| APIRT-2975 | Errore di caricamento del bundle di certificati |
| APIRT-2955 | Impossibile mascherare determinati attributi dei dati di risposta JSON per l'intestazione Content-Type "application/json+fhir" conforme a FHIR |
| APIRT-2946 | Il criterio OAuthV2-RefreshToken non nasconde gli attributi anche se la visualizzazione è impostata su false |
| APIRT-2908 | L'applicazione di TLS1.2 per la chiamata API interna è obbligatoria dopo l'aggiornamento di TLS1.2 su virtualhost |
| APIRT-2901 | Le risposte compresse con Gzip restituite dalla cache vengono compresse due volte |
| APIRT-2873 | I MP generano NullPointerException relativa a VerifyAPIKey dopo l'eliminazione di products/developers/proxies |
| APIRT-2871 | Norme IOIntensive visualizzate due volte in Trace |
| APIRT-2825 | Errore grammaticale nella risposta di errore accesstoken |
| APIRT-2750 | Errori di traffico elevati in un'organizzazione specifica |
| APIRT-2685 | Il traffico non può fluire a causa di un errore sconosciuto |
| APIRT-2647 | Errore"Il flusso di input sottostante ha restituito zero byte" con nonprod/dev |
| APIRT-2630 | Problemi intermittenti durante il tentativo di lettura del valore dalla cache |
| APIRT-2620 | Pool di thread separato per alcuni passaggi di blocco |
| APIRT-2610 | java.lang.ClassCastException con criteri di memorizzazione nella cache delle risposte |
| APIRT-2608 | Errore di analisi delle intestazioni Last-Modified nelle norme di memorizzazione nella cache delle risposte |
| APIRT-2605 | Le variabili"organization" e "environment" non devono essere sovrascritte tramite i criteri |
| APIRT-2566 | Le norme OAuthV2 restituiscono un'intestazione WWW-Authenticate non valida |
| APIRT-2491 | L'aggiornamento di TargetServer non è riuscito a causa del timeout RPC tra la gestione e mps |
| APIRT-2386 | Viene creato un ambito di stringa vuota in un prodotto API con ambiti OAuth consentiti vuoti |
| APIRT-2383 | Le norme di trasformazione XSL non sembrano registrare dati in caso di errore |
| APIRT-2364 | Le variabili del flusso di errore OAuth non vengono aggiornate in caso di errore |
| APIRT-2216 | Eventi inviati dal server - flusso di eventi con problemi in produzione |
| APIRT-2079 | DEBUG cURL call not stopping after the timeout expires for the created session |
| APIRT-1495 | La protezione dalle minacce XML non rileva il tipo di contenuti FHIR |
| APIRT-347 | Il criterio XSL non viene convalidato correttamente durante l'importazione (non assegna i risultati alle variabili di output come documentato) |