Habilitación de CORS para la consola interactiva en el portal para desarrolladores de API Management

El Intercambio de Recursos de Origen Cruzado (CORS) es un mecanismo que usa encabezados HTTP para permitir a un servidor que indique cualquier origen (dominio, esquema o puerto) distinto del suyo propio a partir del que un explorador debe permitir la carga de recursos.

Para permitir que los visitantes del portal para desarrolladores de API Management usen la consola de prueba interactiva en las páginas de referencia de la API, habilite una directiva de CORS para las API en la instancia de API Management. Si el nombre de dominio del portal para desarrolladores no es un origen permitido para las solicitudes de API entre dominios, los usuarios de la consola de prueba verán un error de CORS.

En determinados escenarios, puede configurar el portal para desarrolladores como proxy CORS en lugar de habilitar una directiva de CORS para las API.

SE APLICA A: Desarrollador | Básico | Estándar | Premium

Requisitos previos

Vaya a la instancia de API Management.

  1. En Azure Portal, busque y seleccione Servicios de API Management.

    Seleccionar servicios de API Management

  2. En la página de servicios API Management, seleccione la instancia de API Management.

    Seleccionar su instancia de API Management

Habilitación de la directiva de CORS para las API

Puede habilitar una opción para configurar automáticamente una directiva de CORS para todas las API de la instancia de API Management. También puede configurar manualmente una directiva de CORS.

Nota:

Solo se ejecuta una directiva de CORS. Si especifica varias directivas de CORS (por ejemplo, en el nivel de API y en el nivel de todas las API), es posible que la consola interactiva no funcione según lo esperado.

Habilitación automática de la directiva de CORS

  1. En el menú izquierdo de la instancia de API Management, en Portal para desarrolladores, seleccione Información general del portal.
  2. En Habilitar CORS, se muestra el estado de la configuración de la directiva de CORS. Un cuadro de advertencia indica que falta una directiva o que está mal configurada.
  3. Para habilitar CORS desde el portal para desarrolladores para todas las API, seleccione Habilitar CORS.

Captura de pantalla que muestra dónde comprobar el estado de la directiva de CORS en el portal para desarrolladores.

Habilitación manual de la directiva de CORS

  1. Haga clic en el vínculo Manually apply it on the global level (Aplicarlo manualmente en el nivel global) para ver el código generado de la directiva.
  2. Vaya a Todas las API en la sección API de la instancia de API Management.
  3. Haga clic en el icono </> en la sección Procesamiento de entrada.
  4. En el editor de directivas, inserte la directiva en la sección <entrante> del archivo XML. Asegúrese de que el valor de <origin> coincide con el dominio del portal para desarrolladores.

Nota

Si aplica la directiva de CORS en el ámbito del producto, en lugar del ámbito de las API, y la API usa la autenticación de clave de suscripción a través de un encabezado, la consola no funcionará.

El explorador emite automáticamente una solicitud HTTP OPTIONS, que no contiene un encabezado con la clave de suscripción. Como falta la clave de suscripción, API Management no puede asociar la llamada a OPTIONS con ningún producto, por lo que no puede aplicar la directiva de CORS.

Como solución alternativa, puede pasar la clave de suscripción en un parámetro de consulta.

Opción de proxy CORS

En algunos escenarios (por ejemplo, si la puerta de enlace de API Management está aislada en la red), puede configurar el portal para desarrolladores como un proxy CORS, en lugar de habilitar una directiva de CORS para las API. El proxy CORS enruta las llamadas API de la consola interactiva a través del back-end del portal en la instancia de API Management.

Nota:

Si las API se exponen a través de una puerta de enlace autohospedada o si el servicio está en una red virtual, se requiere la conectividad desde el servicio back-end del portal para desarrolladores de API Management a la puerta de enlace.

Para configurar el proxy CORS, acceda al portal para desarrolladores como administrador:

  1. En la página Información general de la instancia de API Management, seleccione Portal para desarrolladores. El portal para desarrolladores se abre en una nueva pestaña del explorador.
  2. En el menú izquierdo de la interfaz administrativa, seleccione Páginas>API>Detalles.
  3. En la página API: Detalles, seleccione el widget Operación: detalles y Editar widget.
  4. Seleccione Usar proxy CORS.
  5. Guarde los cambios en el portal y vuelva a publicar el portal.

Configuración de CORS para el portal para desarrolladores autohospedado

Si autohospeda el portal para desarrolladores, se necesita la siguiente configuración para habilitar CORS:

  • Especifique el punto de conexión de back-end del portal mediante la opción backendUrl en los archivos de configuración. De lo contrario, el portal autohospedado no estará al tanto de la ubicación del servicio back-end.

  • Agregue valores de dominio de origen a la configuración del portal autohospedado que especifiquen los entornos donde se hospeda el portal autohospedado. Más información

  • Para obtener más información sobre la configuración de directiva, consulte Establecer o editar directivas.
  • Para más información sobre la directiva de CORS, consulte la referencia de la directiva cors.