2012-04-01 12 views
0

Ich vermisse wahrscheinlich etwas, aber bis jetzt habe es nicht herausgefunden.Cross Domain Ajax Beitrag Anfrage

Ich habe eine MVC-Anwendung, die auf dem Web-Standard-Port (dh 80) hört, am Ende der Interaktion mit dem Benutzer sendet es eine Ajax-Post-Anfrage (mit jquery) zu einem WCF 4 REST-Dienst, der zuhört Port 90, leider, ich bin nicht erlaubt, wegen der gleichen Sicherheitspolitik der Herkunftsländer.

Ich habe gelesen, dass Chrome, Safari und Firefox standardmäßig das CORS-Protokoll unterstützen, das domänenübergreifende Anfragen zulässt.

In meinem Server habe ich die Header der Antwort hinzugefügt: Access-Control-Allow-Origin, Zugriff-Control-Allow-Methoden, Access-Control-Allow-Header und Access-Control-Max-Age.

von dem, was ich gesehen habe alle Cors Plugins Microsoft XDR-Objekt behandeln und nicht das Xhr Standardverhalten ändern.

Jede Hilfe wird

Ron

+0

die 'Access-Control-Allow-Origin' Header sollte Hinzufügen arbeiten und es hat aus dem Dienst auf Port 90 (nur um sicherzugehen) hören zu senden. – stewe

Antwort

0

Hey Stewe danke für die Antwort appriciated,

Danke, werden die Header an den Service-Antwort hinzugefügt hat nicht den Trick. Folgendes jedoch (Cors-Lösung):

a) Ich habe jquery v 1.5.1 verwendet und festgestellt, dass jemand einen Fehler in Verbindung mit domänenübergreifenden Anfragen meldet, der in einer späteren Version behoben wurde.

<httpProtocol> 
    <customHeaders> 
    <add name="Access-Control-Allow-Origin" value="*"/> 
    <add name="Access-Control-Allow-Headers" value="Content-Type"/> 
    </customHeaders> 
</httpProtocol> 

Diese sln nur relevant für Browser, die CORS-Protokoll unterstützen (das heißt nicht IE) für die wir easyxdm verwenden können:

b) in der Service-Web-Konfigurations Ich habe die folgende decalred.

Irgendwann habe ich mich entschieden, meinen Dienst nicht dem Benutzer, sondern über eine Benutzeroberfläche verfügbar zu machen.

Danke,

Ron