【问题标题】:Cross server webservice using ajax使用 ajax 的跨服务器 web 服务
【发布时间】:2012-02-22 10:41:00
【问题描述】:

你好 stackoverflow 用户。

我的服务器设置如下: 一个可以访问 http/80 的网络服务器,运行 www.domain.com 可以访问运行 web 服务的内部网络(db 等)的应用服务器

我有一个简单的服务器设置小问题。

现在我想从我的网络服务器上的网站的 ajax 脚本调用我的网络服务。但是由于我的应用程序服务器无法访问互联网,因此(在我看来)这是不可能的,因为 javascript(在最终用户浏览器中运行)应该可以访问该 Web 服务。

我通过在网络服务器上创建一个网络服务来调用我的应用服务器上的网络服务来提出解决方案,但这是一个奇怪的解决方案,你们中有人知道如何解决这个问题吗?

【问题讨论】:

  • 运行 http/80 的网络服务器有什么作用吗?还是只是代理呼叫?
  • 它运行网络服务器,可以访问一个网卡上的内部网络和另一个网卡上的互联网...
  • 使用代理服务器是我处理类似问题的方式。

标签: c# jquery ajax web-services


【解决方案1】:

我认为你做不到。您必须在 WebServer 上提供一些东西,最终用户可以使用它来访问您的 App Server。

您有多种选择

  • 页面方法
  • WebServer 上的 Web 服务将 ajax 调用中继到应用服务器

希望这些信息对您有所帮助。

【讨论】:

    【解决方案2】:

    如果我理解正确,您只是通过某些网络防火墙使用 Web 服务作为代理。有一些工具可以为您执行此操作,但是,如果您正在运行一个简单的服务,那么我认为您的设置没有问题。

    这样的 IIS 工具之一是 Application Request Routing

    【讨论】:

    • 您是否有任何将其与 Web 服务一起使用的示例。它似乎是为流媒体和缓存数据而不是为重新路由网络服务而构建的......
    • 根据安全问题,我将坚持使用两个 Web 服务的解决方案。
    • 就像我上面所说的,我想我也会这样做。但是,可以将 ARR 设置为在您的网络中充当反向代理。它还可以做很多其他事情。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-10
    • 1970-01-01
    • 1970-01-01
    • 2013-06-23
    • 1970-01-01
    • 2015-08-22
    相关资源
    最近更新 更多