2017-03-27 1 views
0

Ich habe einen Webservice mit WCF, verwendet dieses erste Tutorial: https://msdn.microsoft.com/en-us/library/ms730935(v=vs.110).aspx.WCF Access-Control-Erlauben-Ursprung

Ich kann nicht von Ajax anfordern, es besagt, dass keine 'Access-Control-Allow-Origin'-Header auf der angeforderten Ressource vorhanden ist. Die Lösungen, die ich im Internet gesehen habe, sind nicht für mich, ich habe keine global.asax oder web.config Datei. Ich habe versucht, eine globale.asax hinzuzufügen, aber es ist nicht unter den Elementen, die ich dem Projekt hinzufügen kann.

Wie konfiguriere ich CORS?

+0

Versuchen Sie, über diesen Link zu schauen. Ich denke, es wird zu Ihrer Antwort führen. https://www.codeproject.com/Articles/845474/Enabling-CORS-in-WCF – Ingenioushax

+0

Wie bei den meisten Antworten da draußen, es funktioniert nicht für mich, weil ich nicht global.asax Datei in meinem hinzufügen kann Projekt. Wenn Sie wissen, wie, bitte helfen, aber die üblichen Methoden fehlgeschlagen. – mikepa88

+0

Versuchen Sie das? Erstellen Sie eine 'Global.asax' und fügen Sie dann die 'Global.asax.cs' Dateien' Application_BeginRequest (...) 'Methode hinzu. Der Code sollte Header die Anforderungen hinzufügen, um CORS zu aktivieren. 'HttpContext.Current.Response.AddHeader (" Access-Control-Allow-Origin "," * ");'. Legen Sie nach Bedarf andere Header fest. – Ingenioushax

Antwort

0

Sie bitte diesen Abschnitt zu Ihrer Konfigurationsdatei hinzu:

<httpProtocol> 
     <customHeaders> 
     <add name="Access-Control-Allow-Origin" value="*"/> 
     <add name="Access-Control-Allow-Headers" value="X-Requested-With,Content-Type, Accept" /> 
     </customHeaders> 
    </httpProtocol> 
    </system.webServer> 

und Ihre Methode * ändern, so können Sie alle Arten von Anfragen erhalten.

[WebInvoke(Method = "*"