¿Cómo uso Access-Control-Allow-Origin? ¿Simplemente va entre las tags de cabeza html?

He estado leyendo sobre Access-Control-Allow-Origin porque parece ser efectivo al permitir solicitudes de dominios cruzados, ya que tengo acceso al sitio externo. Mi pregunta es cómo uso Access-Control-Allow-Origin para permitir solicitudes entre dominios. Intenté esto (no te rías) (por cierto, todo lo que quiero es que devuelva un solo número, 1 o 0)

   Access-Control-Allow-Origin: *   1   

¿Estoy cerca? Gracias por tu ayuda. Si hay una manera más fácil de hacer una solicitud simple entre dominios, házmelo saber.

Eso es un encabezado HTTP. Debería configurar su servidor web o aplicación web para enviar este encabezado de manera ideal. Quizás en htaccess o PHP.

Alternativamente, es posible que pueda usar

 ...... 

No sé si eso funcionaría. No todos los encabezados HTTP se pueden configurar directamente en el HTML.

Esto funciona como una alternativa a muchos encabezados HTTP, pero vea el comentario de @EricLaw a continuación. Este encabezado particular es diferente.

Advertencia

Esta respuesta es estrictamente sobre cómo establecer los encabezados. No sé nada acerca de permitir solicitudes de dominios cruzados.

Acerca de los encabezados HTTP

Cada solicitud y respuesta tiene encabezados. El navegador lo envía al servidor web

 GET /index.htm HTTP/1.1 

Entonces los encabezados

 Host: www.example.com User-Agent: (Browser/OS name and version information) .. Additional headers indicating supported compression types and content types and other info 

Entonces el servidor envía una respuesta

 Content-type: text/html Content-length: (number of bytes in file (optional)) Date: (server clock) Server: (Webserver name and version information) 

Se pueden configurar encabezados adicionales, por ejemplo, Cache-Control , todo depende de su idioma (PHP, CGI, Java, htaccess) y servidor web (Apache, etc.).

Hay 3 formas de permitir el origen de dominio cruzado (excluyendo jsonp ):

1) Establezca el encabezado en la página directamente usando un lenguaje de plantillas como PHP. Tenga en cuenta que no puede haber HTML antes de su encabezado o fallará.

   

2) Modifique el archivo de configuración del servidor ( apache.conf ) y agregue esta línea. Tenga en cuenta que "*" representa permitir todo. Algunos sistemas también pueden necesitar el conjunto de credenciales. En general, permitir todo acceso es un riesgo de seguridad y debe evitarse:

 Header set Access-Control-Allow-Origin "*" Header set Access-Control-Allow-Credentials true 

3) Para permitir múltiples dominios en servidores web Apache, agregue lo siguiente a su archivo de configuración

  SetEnvIf Origin "http(s)?://(www\.)?(example.org|example.com)$" AccessControlAllowOrigin=$0$1 Header add Access-Control-Allow-Origin %{AccessControlAllowOrigin}e env=AccessControlAllowOrigin Header set Access-Control-Allow-Credentials true  

4) Para uso de desarrollo, solo piratear su navegador y permitir CORS ilimitados usando la extensión de Chrome Allow-Control-Allow-Origin

    Intereting Posts