ASP.NET MVC Web 应用程序所需的 WCF SOAP 服务应该在客户端还是服务器端调用?

Should a WCF SOAP Service required by an ASP.NET MVC Web Application be invoked client side or server side?

在 Visual Studio 2013 U4 Ultimate 中,我有一个针对 .NET 4.5.3 的解决方案:

  1. 基于ASP.NET 5.2 MVC Web 应用程序项目的public 网站
  2. 具有一些操作的 WCF SOAP 服务

安全性很重要,因为服务处理的是金融交易。

可以从 Web 浏览器中的 JavaScript 调用 WCF 服务,或者 Web 浏览器可以向 Web 应用程序发送请求以在服务器端调用 WCF 服务,并且 return结果。

调用服务客户端或服务端的实际优缺点是什么?

如何根据技术事实选择客户端调用还是服务器端调用?

对于应该使用客户端调用还是服务器端调用,是否有约定、供应商推荐的做法或已知的最佳做法?

这有点主观 - 但是,安全性不应决定服务器与客户端 - 您必须保护网站或保护服务。

如果您不能保证服务本身的安全性,或者确切了解服务的调用和使用方式的人可能会为滥用的可能性敞开大门,那么请不要将其暴露给客户端。客户端上的任何东西都是不安全的,can/will 有时会被操纵。

无论哪种方式,如果实施得当,最终用户应该不会注意到这两种方法之间的重大差异。