Dela via


Aktivera CORS för interaktiv konsol i API Management-utvecklarportalen

Resursdelning mellan ursprung (CORS) är en HTTP-rubrikbaserad mekanism som gör att en server kan ange alla ursprung (domäner, scheman eller portar) som en webbläsare bör tillåta inläsning av resurser från.

Om du vill låta besökare på API Management-utvecklarportalen använda den interaktiva testkonsolen på API-referenssidorna aktiverar du en CORS-princip för API:er i din API Management-instans. Om utvecklarportalens domännamn inte är ett tillåtet ursprung för API-begäranden mellan domäner ser testkonsolanvändare ett CORS-fel.

I vissa scenarier kan du konfigurera utvecklarportalen som en CORS-proxy i stället för att aktivera en CORS-princip för API:er.

GÄLLER FÖR: Utvecklare | Grundläggande | Standard | Premium

Förutsättningar

Gå till API Management-instansen

  1. I Azure-portalen söker du efter och väljer API Management-tjänster.

    Välj API Management-tjänster

  2. På sidan API Management-tjänster väljer du din API Management-instans.

    Välj din API Management-instans

Aktivera CORS-princip för API:er

Du kan aktivera en inställning för att konfigurera en CORS-princip automatiskt för alla API:er i din API Management-instans. Du kan också konfigurera en CORS-princip manuellt.

Kommentar

Endast en CORS-princip körs. Om du anger flera CORS-principer (till exempel på API-nivå och på nivån alla API:er) kanske den interaktiva konsolen inte fungerar som förväntat.

Aktivera CORS-princip automatiskt

  1. I den vänstra menyn i DIN API Management-instans går du till utvecklarportalen och väljer Portalöversikt.
  2. Under Aktivera CORS visas status för CORS-principkonfiguration. En varningsruta anger en frånvarande eller felkonfigurerad princip.
  3. Om du vill aktivera CORS från utvecklarportalen för alla API:er väljer du Aktivera CORS.

Skärmbild som visar var du kan kontrollera status för din CORS-princip i utvecklarportalen.

Aktivera CORS-princip manuellt

  1. Välj länken Tillämpa den manuellt på global nivå för att se den genererade principkoden.
  2. Gå till Alla API:er i avsnittet API:er i DIN API Management-instans.
  3. Välj ikonen />i avsnittet Inkommande bearbetning.<
  4. I principredigeraren infogar du principen i avsnittet <inkommande> i XML-filen. Kontrollera att <ursprungsvärdet> matchar utvecklarportalens domän.

Kommentar

Om du tillämpar CORS-principen i produktomfånget, i stället för API:ernas omfång och ditt API använder prenumerationsnyckelautentisering via ett huvud, fungerar inte konsolen.

Webbläsaren utfärdar automatiskt en OPTIONS HTTP-begäran som inte innehåller ett huvud med prenumerationsnyckeln. På grund av den saknade prenumerationsnyckeln kan API Management inte associera anropet OPTIONS med en produkt, så det kan inte tillämpa CORS-principen.

Som en lösning kan du skicka prenumerationsnyckeln i en frågeparameter.

CORS-proxyalternativ

I vissa scenarier (till exempel om API Management-gatewayen är nätverksisolerad) kan du välja att konfigurera utvecklarportalen som en CORS-proxy i stället för att aktivera en CORS-princip för dina API:er. CORS-proxyn dirigerar den interaktiva konsolens API-anrop via portalens serverdel i DIN API Management-instans.

Kommentar

Om API:erna exponeras via en gateway med egen värd eller om tjänsten finns i ett virtuellt nätverk krävs anslutningen från API Management-utvecklarportalens serverdelstjänst till gatewayen.

Om du vill konfigurera CORS-proxyn öppnar du utvecklarportalen som administratör:

  1. På sidan Översikt för din API Management-instans väljer du Utvecklarportal. Utvecklarportalen öppnas på en ny webbläsarflik.
  2. I den vänstra menyn i det administrativa gränssnittet väljer du Sidor>API:er>Information.
  3. På sidan API:er: Information väljer du widgeten Åtgärd: Information och väljer Redigera widget.
  4. Välj Använd CORS-proxy.
  5. Spara ändringar i portalen och publicera portalen igen.

CORS-konfiguration för lokalt installerad utvecklarportal

Om du själv är värd för utvecklarportalen krävs följande konfiguration för att aktivera CORS:

  • Ange portalens serverdelsslutpunkt med hjälp av backendUrl alternativet i konfigurationsfilerna. Annars är den lokalt installerade portalen inte medveten om platsen för serverdelstjänsten.

  • Lägg till ursprungsdomänvärden i den lokalt installerade portalkonfigurationen som anger de miljöer där den lokalt installerade portalen finns. Läs mer