/ / cómo llamar a las llamadas ajax de dominios cruzados usando angular / Jquery - asp.net-mvc, angularjs, c # -4.0, asp.net-web-api, cors

cómo llamar a las llamadas ajax de dominios cruzados usando angular / Jquery - asp.net-mvc, angularjs, c # -4.0, asp.net-web-api, cors

Tengo una aplicación alojada con dominio www.abc.com. Esto es en realidad la aplicación WebApi. Quiero crear una aplicación de IU separada utilizando asp.net mvc, y su dominio es www.xyz.com. La aplicación de interfaz de usuario que consume Angular, HTML5 y otras tecnologías web. Aquí realmente necesito realizar GET, PUT, POST, DELETE contra www.abc.com. desafortunadamente, la limitación de jsonp, me gusta elegir CORS (HTML5 Cors), pero no puedo pasar el objeto json a las llamadas CORS. ¿Cuál es el mejor método posible para llamar a las llamadas de dominio cruzado (GET, PUT, POST, DELETE) usando ¿Qué debo cambiar en IIS para manejar la solicitud de CORS?

Respuestas

2 para la respuesta № 1

agregue abajo web.config en webapi

<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
</httpProtocol>
</system.webServer>

y en angular, establezca las siguientes opciones de configuración para $ http

header("Access-Control-Allow-Credentials: true");
header("Access-Control-Allow-Origin: http://url.com:8080");
header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization");

compruebe también este enlace


0 para la respuesta № 2

Para habilitar las llamadas ajax de dominios cruzados, puede colocar crossdomain.config en la carpeta raíz de la API web de asp.net cuando se publique con el siguiente contenido.

<?xml version="1.0"?>
<cross-domain-policy>
<allow-access-from domain="*"/>
</cross-domain-policy>