如何对托管在不同域上的WCF服务进行JavaScript调用?

如何对托管在不同域上的WCF服务进行JavaScript调用?,javascript,ajax,wcf,xmlhttprequest,wcf-routing,Javascript,Ajax,Wcf,Xmlhttprequest,Wcf Routing,我们正在使用ASP.NET和AJAX设计一个web应用程序,我们希望在不同的网站上托管WCF服务层,并从客户端页面对服务层进行JavaScript调用。我们知道浏览器不允许对不同的端口或域进行AJAX调用。构建解决方案的最佳方式是什么?我们正在考虑使用代理层,将服务托管在与客户端相同的域上,该域具有对服务层的web引用。有更好的解决方案吗?通常最好限制页面访问的域数。服务器端代理确实是一种很好的方法。我认为最好的方法是调用本地页面,该页面调用远程资源并返回结果。这样可以避免跨域问题 您可以对 服

我们正在使用ASP.NET和AJAX设计一个web应用程序,我们希望在不同的网站上托管WCF服务层,并从客户端页面对服务层进行JavaScript调用。我们知道浏览器不允许对不同的端口或域进行AJAX调用。构建解决方案的最佳方式是什么?我们正在考虑使用代理层,将服务托管在与客户端相同的域上,该域具有对服务层的web引用。有更好的解决方案吗?

通常最好限制页面访问的域数。服务器端代理确实是一种很好的方法。

我认为最好的方法是调用本地页面,该页面调用远程资源并返回结果。这样可以避免跨域问题

  • 您可以对 服务和网站在同一条件下 域,但不同的文件夹
  • 以不同的方式定义服务 DLL并在中创建svc文件 网站,并将svc文件指向 包含服务的dll
  • 服务器端代理
您的负载平衡器可以将所有请求发送到/服务到您的服务服务器


如果没有负载平衡器,可以让Web服务器充当服务服务器的反向代理。如果您使用的是IIS7,则可以使用。

原型为此提供了一个插件。问题出在客户端而不是服务器上。www.mellowmorning.com/2007/10/25/introduction-a-cross-site-ajax-plugin-for-prototype/

我相信,您提出的解决方案确实是唯一的办法。