2010-12-08 152 views
0

MSDN上的以下文章提供了调用Web服务,AJAX ...... http://msdn.microsoft.com/en-us/magazine/cc163499.aspxAJAX调用Web服务

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

然后直接在JScript中使用的类名的ASP.NET AJAX解决方案。但是,当我将该服务上传到其他域并试图执行相同的操作时,它将无法工作。我有没有办法做到这一点,或者我错过了什么?在此先感谢...

+0

尝试直接浏览到其他域上的.asmx。你看到了什么? – 2010-12-08 08:02:24

+0

工作正常。即使正常的服务器调用工作正常。唯一的问题是AJAX调用。 – mihsathe 2010-12-08 08:05:03

回答

2

由于same origin policy限制,这是不可能的。您无法执行跨域AJAX调用。一种可能的解决方法是使用JSONP,但您需要有一个支持它的Web服务。

+0

呵呵,不明白他在试图消费远程服务,以为他上传了整个东西..: - | – 2010-12-08 08:03:59

0

请安装Fiddler2和监控您的请求/响应,它在故障排除Ajax和Web服务的问题非常有帮助。