2010-12-08 9 views
0

Der folgende Artikel auf Msdn stellt die ASP.NET AJAX-Lösung Web-Service mit AJAX zu nennen ... http://msdn.microsoft.com/en-us/magazine/cc163499.aspx wieAJAX-Aufruf zu Web-Service

<asp:ScriptManager ID="_scriptManager" runat="server"> 
    <Services> 
    <asp:ServiceReference Path="StockQuoteService.asmx" /> 
    </Services> 
</asp:ScriptManager> 

Und dann die Klassennamen in JScript direkt zu verwenden. Aber wenn ich den Dienst auf eine andere Domain hochgeladen habe und versucht habe, dasselbe zu tun, würde es nicht funktionieren. Kann ich es nicht tun oder verpasse ich etwas? Vielen Dank im Voraus ...

+0

Versuchen Sie, direkt zu der ASMX auf der anderen Domäne zu navigieren. Was siehst du? –

+0

Funktioniert gut. Funktioniert auch bei normalem Server-Anruf einwandfrei. Einziges Problem ist mit dem AJAX-Aufruf. – mihsathe

Antwort

2

Aufgrund der same origin policy Einschränkung ist dies nicht möglich. Sie können keine domainübergreifenden AJAX-Aufrufe durchführen. Eine mögliche Problemumgehung besteht darin, JSONP zu verwenden, aber Sie müssen über einen Webdienst verfügen, der es unterstützt.

+0

Oh, habe nicht verstanden, dass er versuchte, Remote-Service zu konsumieren, dachte, er hat das Ganze hochgeladen ..: - | –

0

Vielleicht möchten Sie diese einen Wirbel geben, wenn Sie in der Lage sind JQuery zu verwenden:

http://jquery-howto.blogspot.com/2009/04/cross-domain-ajax-querying-with-jquery.html

+0

Danke. Werde das versuchen. Nur neugierig zu wissen; Wie machen sie das in jQuery? in dem Sinne, wie hätten sie es ohne irgendeine Serverseite implementiert? – mihsathe

+0

@mihsathe verwenden sie PHP, um ein serverseitiges Brückenskript zwischen den Domänen zu implementieren. Dann führt jquery einfach eine normale AJAX-Anfrage an dieses PHP-Skript durch, das den Anruf an die entfernte Domäne delegiert. –

+0

oops hat es nicht richtig gelesen. In diesem Fall wird es zur offensichtlichen Lösung. Aber warum sollte ich einen Web-Service erstellen und nicht die gesamte Logik auf der gleichen PHP-Seite implementieren? – mihsathe

0

Bitte Fiddler2 installieren und Ihre Anfrage/Antwort zu überwachen, ist es sehr hilfreich bei der Fehlersuche Ajax und Web-Services Fragen.

+0

coole Software ... – mihsathe