Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
We wtorek 30 sierpnia 2016 roku opublikowaliśmy nową wersję Apigee Edge dla Cloud Public Cloud.
Nowe funkcje i aktualizacje
Poniżej znajduje się lista nowych funkcji i aktualizacji wprowadzonych w tej wersji.
Ładunki JSON w Przypisaniu Komunikat i zgłaszanie błędu
To ulepszenie nie wymaga obejścia, aby zapewnić prawidłowe formatowanie wiadomości JSON. można określić za pomocą nawiasów klamrowych bez tworzenia nieprawidłowego kodu JSON. Na przykład parametr W poniższym przykładzie wstawiana jest wartość message.content w wiadomości JSON:
<Payload contentType="application/json">{"message" : "{message.content}"}</Payload>
Jeśli skorzystano z obejścia, kod będzie działać bez zmian. Możesz też użyć zmiennych Prefiks i variableSuffix zamiast nawiasów klamrowych do wskazywania zmiennych.
Zapoznaj się z <Set><Ładem> w sekcji Assign Message policy (Przypisywanie zasad dotyczących wiadomości) oraz Zgłaszanie błędów w ramach zasad zapoznaj się z dokumentami. (APIRT-1160)
Ulepszenia zasad XML na JSON
Zasada XML na JSON została rozszerzona o następujące funkcje. Możesz skonfigurować zasady na:
- Traktuj podczas konwersji niektóre elementy XML jako tablice, co powoduje ustawienie wartości pod postacią kwadratu nawiasy klamrowe „[ ]” w dokumencie JSON.
- Usuń lub usuń poziomy hierarchii dokumentów XML w ostatecznym dokumencie JSON.
Więcej informacji można znaleźć w sekcji XML. do zasady JSON. (APIRT-1144)
Wiele symboli wieloznacznych w Ścieżki zasobów usługi API
Definiując ścieżki zasobów w usłudze API, możesz umieścić symbole wieloznaczne w wielu miejscach
ścieżki zasobu. Na przykład /team/*/invoices/**
zezwala na wywołania interfejsu API z dowolnymi
jedna wartość po /team
i wszystkich ścieżkach zasobów
po invoices/
. Dozwolony identyfikator URI w wywołaniu interfejsu API spowodowałby
proxyBasePath/team/finance/invoices/company/a
.
Jeśli po tej wersji istniejące ścieżki zasobów usługi API przestaną działać zgodnie z oczekiwaniami, ustaw
tę usługę w Twojej organizacji, aby przywrócić poprzednią
zachowanie: features.enableStandardWildCardMatchForAPIProductResources = true
(MGMT-3273)
Funkcje kryptograficzne w JavaScripcie
Dostępny jest nowy zestaw zaawansowanych funkcji JavaScriptu w języku crypto
do tworzenia, pobierania i aktualizowania następujących obiektów: MD5, SHA-1, SHA256, SHA512.
Obiekt crypto pozwala też uzyskać
w różnych formatach. Więcej informacji znajdziesz w artykule Obiektowy model JavaScript.
(APIRT-2886)
Wersja JAR objaśnienia w Javie sprawdzanie
Podczas przesyłania zasobu JAR Java do serwera proxy interfejsu API zwracany jest kod stanu HTTP 400 (zamiast 500), jeśli wersja zasobu Java jest niezgodna z obsługiwaną przeglądarką Edge wersji środowiska Java wymienionych na stronie Obsługiwane oprogramowanie i . (MGMT-3420)
Sprawdzanie poprawności zasobów serwera proxy interfejsu API
Jeśli masz pliki zasobów serwera proxy API (takie jak JavaScript lub pliki JAR Java) przechowywane w na poziomie środowiska lub organizacji, platforma weryfikacji nie wymaga już uwzględnij te zasoby na poziomie serwera proxy interfejsu API w pakiecie proxy w celu zaimportowania, aby przejść weryfikację. Weryfikacja zasobów odbywa się teraz podczas wdrażania, a nie podczas importowania. (MGMT-1430)
Konfigurowanie limitu czasu dla poszczególnych serwerów proxy API
Możesz skonfigurować serwery proxy interfejsu API tak, aby po upływie określonego czasu przekraczały limit czasu (z kodem błędu 504)
). głównie z myślą o klientach Private Cloud, którzy korzystają z serwerów proxy interfejsów API,
i wykonywanie ich. Załóżmy na przykład, że określone serwery proxy muszą osiągnąć limit czasu po 3 minutach. Dostępne opcje
użyć nowej właściwości api.timeout
w konfiguracji serwera proxy interfejsu API. Aby to zrobić:
użyjemy tego 3-minutowego przykładu:
- Po pierwsze, skonfiguruj system równoważenia obciążenia, router i procesor wiadomości, tak aby przekroczono limit czasu po 3 minutach.
- Następnie skonfiguruj odpowiednie serwery proxy tak, aby przekroczyły limit czasu po 3 minutach. Podaj wartość w
milisekund. Na przykład:
<ProxyEndpoint name="default"> <HTTPProxyConnection> <BasePath>/v1/weather</BasePath> <Properties> <!-- api.timeout is in milliseconeds --> <Property name="api.timeout">180000</Property> </Properties> ...
- Należy jednak pamiętać, że wydłużenie czasu oczekiwania systemu może spowodować problemy z wydajnością, ponieważ
wszystkie serwery proxy bez ustawienia api.timeout korzystają z nowego, wyższego systemu równoważenia obciążenia, routera
czas oczekiwania procesora wiadomości. Skonfiguruj więc inne serwery proxy interfejsów API, które nie wymagają dłuższych limitów czasu
aby używać krótszych limitów czasu. W poniższym przykładzie poniżej ustawiamy limit czasu dla serwera proxy interfejsu API po 1
minuta:
<Property name="api.timeout">60000</Property>
Klienci Google Cloud, którzy nie mogą zmieniać limitów czasu oczekiwania na serwerach brzegowych, mogą też skonfigurować limit czasu serwera proxy dopóki limit czasu będzie krótszy niż standardowy czas oczekiwania procesora wiadomości Edge wynoszący 57 sek.
Nie można zapełnić wartości zmienną. Ta usługa jest objęta Informacje o właściwościach punktu końcowego. (APIRT-1778)
Protokół TLS/SSL na potrzeby rejestrowania wiadomości Zasady
<KeyStore>
i <TrustStore>
można ustawić w
konfigurację SSLInfo
w zasadzie logowania wiadomości,
jedno- i dwukierunkowe użycie TLS/SSL z usługą logowania. Skonfigurujesz SSLInfo w zasadzie logowania wiadomości tak samo jak
będzie na serwerze proxy
Docelowy punkt końcowy. Jednak protokół TLS/SSL usługi Message Logging obsługuje tylko protokół TCP.
(APIRT-1858)
Usunięto błędy
W tej wersji poprawiono następujące błędy. Ta lista jest przeznaczona głównie dla użytkowników, którzy sprawdzają czy zgłoszenia do zespołu pomocy zostały naprawione. Nie zawiera on szczegółowych informacji na temat wszystkich użytkowników.
Identyfikator problemu | Opis |
---|---|
SECENG-609 | Podczas usuwania powiązanego magazynu zaufania lub połączenia w środowisku wykonawczym nie występują błędy gdy ważny certyfikat w magazynie zaufania zostanie usunięty |
MGMT-3404 | Wyświetlanie i pobieranie logów Node.js oraz wdrażanie serwerów proxy wolno |
MGMT-3400 | Wywołanie interfejsu API zarządzania /userroles nie powiedzie się, jeśli użytkownik wykonujący wywołanie ma „+” zaloguj się |
MGMT-3368 | java.lang.ArrayIndexOutOfBoundsException: 1 podczas importowania pakietu serwera proxy API który zawiera katalog zasobów/węzła/zasobów |
MGMT-3364 | OAuthV2: redirect_uri check (Protokół OAuthV2): |
MGMT-3319 | Lista wpisów w Vault, które mają wartość null w jednym z wpisów, nie działają dla organizacji (CPS i spoza CPS) |
MGMT-3226 | Zapytania na poziomie organizacji/środowiska nie powinny pobierać wszystkich danych, które powodują
niepowodzenie W wersji_160302 wystąpił błąd polegający na tym, że na liście zasobów na poziomie organizacji/środowiska wystąpił błąd – niepowodzenie, jeśli łączny rozmiar zasobów przekracza 16 MB, ta poprawka rozwiązuje . |
AXAPP-2429 | Interfejs Analytics API używający response_status_code zwraca dostęp do danych |
AXAPP-2386 | Naprawianie pustych raportów w codziennych raportach e-mailowych Analytics |
AXAPP-2347 | Nie otrzymujesz e-maili z podsumowaniem statystyk dziennych |
APIRT-3141 | Objaśnienia Java powodują błędy podczas wywoływania nowej funkcji ExecutionResult() , ponieważ konstruktor została ustawiona jako prywatna |
APIRT-3140 | Zasada ServiceCallout nie działa w wywołaniach interfejsu API HEAD |
APIRT-3131 | W przypadku serwera proxy interfejsu API podczas korzystania z funkcji zarabiania z parametrem „createBy” wyświetla się nieprawidłowa wartość zewnętrzny dostawca uwierzytelniania |
APIRT-3121 | Wprowadzona zmiana pliku zasobów organizacji nie jest w pełni skuteczna |
APIRT-3117 | MP osiągnął 100% wykorzystania procesora i przestał obsługiwać ruch |
APIRT-3016 | router „Upłynął limit czasu połączenia” błędy we wdrożeniach |
APIRT-2975 | Błąd przesyłania pakietu certyfikatów |
APIRT-2955 | Nie można zamaskować niektórych atrybutów danych odpowiedzi JSON na potrzeby FHIR-skargi Nagłówek typu treści „application/json+fhir” |
APIRT-2946 | Zasada OAuthV2-RefreshToken nie ukrywa atrybutów, mimo że wyświetlanie jest ustawione na false (fałsz) |
APIRT-2908 | Wymuszanie TLS1.2 dla wewnętrznego wywołania interfejsu API jest wymagane po aktualizacji TLS1.2 wirtualna host |
APIRT-2901 | Odpowiedzi skompresowane algorytmem gzip zwracane z pamięci podręcznej są podwójnie skompresowane |
APIRT-2873 | MP zgłaszają wyjątek NullPointerException dotyczący VerifyAPIKey po usunięciu products/developers/proxies |
APIRT-2871 | Zasady wymagające dużej liczby zasobów reklamowych pojawiają się dwukrotnie w Trace |
APIRT-2825 | Błąd gramatyczny w odpowiedzi na błąd tokena dostępu |
APIRT-2750 | Duża liczba błędów ruchu w określonej organizacji |
APIRT-2685 | Ruch nie może przepływać z powodu nieznanego błędu |
APIRT-2647 | „Podstawowy strumień danych wejściowych zwrócił 0 bajtów” błąd z nonprod/dev |
APIRT-2630 | Sporadyczne problemy podczas próby odczytu wartości z pamięci podręcznej |
APIRT-2620 | Osobna pula wątków w przypadku niektórych kroków blokowania |
APIRT-2610 | java.lang.ClassCastException z zasadą pamięci podręcznej odpowiedzi |
APIRT-2608 | Błąd analizy nagłówków Last-Modified w zasadach pamięci podręcznej odpowiedzi |
APIRT-2605 | "organizacja" i „środowisko” zmiennych nie można zastępować za pomocą zasad |
APIRT-2566 | Zasada OAuthV2 zwraca nieprawidłowy nagłówek WWW-Authenticate |
APIRT-2491 | Nie udało się zaktualizować serwera docelowego z powodu limitu czasu RPC między zarządzaniem a mil/s |
APIRT-2386 | W usłudze API utworzono pusty zakres ciągu znaków z pustym polem Dozwolony protokół OAuth zakresy |
APIRT-2383 | Wygląda na to, że zasady transformacji XSL nie rejestrują żadnych danych |
APIRT-2364 | Zmienne procesu błędu OAuth nie są aktualizowane w przypadku błędu |
APIRT-2216 | Zdarzenia wysłane z serwera – problemy ze strumieniem zdarzeń w środowisku produkcyjnym |
APIRT-2079 | DEBUG cURL nie zatrzymuje się po upłynięciu czasu oczekiwania dla utworzonego sesja |
APIRT-1495 | Ochrona przed zagrożeniami XML nie wykrywa treści typu Content-Type |
APIRT-347 | Zasada XSL nie jest prawidłowo weryfikowana podczas importowania (nie powoduje przypisania wyników aby wyświetlać zmienne zgodnie z dokumentacją) |