Wewnętrzny błąd portalu dla programistów

Wyświetlasz dokumentację Apigee Edge.
Przejdź do dokumentacji Apigee X.
info

Krótki opis problemu

Podczas wysyłania żądania do interfejsu API na żywo za pomocą SmartDocs z portalu dla programistów wystąpił błąd.

Komunikaty o błędach

Częsty błąd w portalu dla programistów to „Wystąpił błąd wewnętrzny. Spróbuj ponownie wysłać żądanie”.

Możliwe przyczyny

Ten błąd może wystąpić, gdy portal dla programistów nie otrzyma odpowiedzi z backendu (serwera proxy SmartDocs lub rzeczywistego punktu końcowego).

Diagnostyka

Włącz „Narzędzia dla programistów” w przeglądarce i sprawdź kartę Sieć, aby zidentyfikować rzeczywisty błąd.

Typowe błędy i ich przyczyny są wymienione w tabeli poniżej:

Błąd

Typowe przyczyny

ERR_NAME_NOT_RESOLVED

Nieprawidłowo skonfigurowany serwer proxy SmartDocs lub ograniczenia zapory sieciowej

Mieszana zawartość

Portal skonfigurowany przez HTTPS, żądanie SmartDocs przez HTTP

500 – Wewnętrzny błąd serwera

Omówimy teraz każdą z tych przyczyn i kroki, które należy wykonać, aby rozwiązać problem.

Nieprawidłowo skonfigurowany serwer proxy SmartDocs lub ograniczenia zapory sieciowej

Komunikat „ERR_NAME_NOT_RESOLVED” oznacza, że adres URL serwera proxy SmartDocs jest nieprawidłowo skonfigurowany lub sieć, z której uzyskiwany jest dostęp do portalu, nie może wywołać adresu URL serwera proxy SmartDocs z powodu ograniczeń zapory sieciowej. Serwer proxy SmartDocs musi być dostępny z internetu lub z sieci wewnętrznej (w przypadku wewnętrznych interfejsów API).

Rozwiązanie

Upewnij się, że serwer proxy SmartDocs jest dostępny ze wszystkich wymaganych sieci, wdrażając serwer proxy SmartDocs na hoście wirtualnym w Edge z nazwą hosta dostępną z internetu.

Portal skonfigurowany przez HTTPS, żądanie SmartDocs przez HTTP

Błąd „Mieszana zawartość” oznacza, że serwer proxy SmartDocs jest wywoływany przez HTTP ze strony wczytanej przez HTTPS.

Rozwiązanie

Aby rozwiązać ten problem, udostępnij serwer proxy SmartDocs przez HTTPS. Możesz to zrobić, wdrażając serwer proxy SmartDocs, aby uwzględnić hosta wirtualnego skonfigurowanego do używania TLS/SSL (zwykle hosta wirtualnego „secure”).

Serwer proxy SmartDocs zwraca wyjątek

Komunikat 500 – Wewnętrzny błąd serwera może być spowodowany problemem z serwerem proxy „smartdocs”. W takim przypadku zauważysz, że serwer proxy SmartDocs zwraca ten błąd.

Diagnostyka

Aby zdiagnozować błędy serwera proxy „smartdocs”, użyj narzędzia Trace w sposób opisany poniżej. Więcej informacji znajdziesz w artykule Korzystanie z narzędzia Trace.

  1. Włącz śledzenie serwera proxy „smartdocs” w organizacji „VALIDATE”, aby znaleźć konkretną zasadę, która zwraca błąd 500 – Wewnętrzny błąd serwera.

  1. W śladzie wybierz konkretną zasadę, aby zidentyfikować przyczynę błędu.

Rozwiązanie

Napraw zidentyfikowany błąd. Jeśli potrzebujesz pomocy, skontaktuj się z zespołem pomocy Apigee Edge.

Procesory komunikatów Edge nie mogą wywołać opublikowanego punktu końcowego interfejsu API

Błąd 500 – Wewnętrzny błąd serwera może też wystąpić, gdy procesory komunikatów należące do organizacji hostującej serwer proxy SmartDocs nie mogą wywołać punktu końcowego interfejsu API.

Diagnostyka

Aby zdiagnozować błędy serwera proxy „smartdocs”, użyj narzędzia Trace w sposób opisany poniżej. Więcej informacji znajdziesz w artykule Korzystanie z narzędzia Trace.

  1. Włącz śledzenie serwera proxy „smartdocs” w organizacji „VALIDATE”, aby znaleźć konkretną zasadę która zwraca błąd 500 – Wewnętrzny błąd serwera.

  1. W przykładowym śladzie interfejsu pokazanym powyżej widać, że zasada JavaScript „BuildTargetAPIRequest” nie może wykonać docelowego adresu URL.
  1. Pobierz docelowy adres URL z zasady JavaScript „BuildTargetAPIRequest”.
  1. Wykonaj bezpośrednie wywołanie adresu URL z węzłów procesora komunikatów powiązanych z „VALIDATE” org w sposób pokazany poniżej:
    curl -v <target URL>
  1. Popraw każdy zaobserwowany błąd.

Rozwiązanie

  1. Upewnij się, że interfejsy API opublikowane w portalu dla programistów można wywoływać z procesorów komunikatów powiązanych z organizacją „VALIDATE”, i popraw wszelkie napotkane błędy.
  1. Jeśli możesz wykonać wywołanie interfejsu API bezpośrednio z procesora komunikatów, najprawdopodobniej będziesz też w stanie wykonać je za pomocą SmartDocs.
  1. Wykonaj wywołanie interfejsu API za pomocą SmartDocs i sprawdź, czy problem został rozwiązany.