【问题标题】:How can I call WEB api service fabric which deployed on azure?如何调用部署在 azure 上的 WEB api 服务结构?
【发布时间】:2017-09-10 03:18:06
【问题描述】:

我已经使用 Visual Studio 2015 创建了本地无状态 WebAPI 和 Statefull 数据服务。它通过实现http://localhost:344/api/abc/getEmployee 在本地系统和网站访问 WebAPI 服务中完美运行。然后我在 Azure 上部署了服务结构应用程序并收到了客户端 URL

http://xyz.southeastasia.cloudapp.azure.com:1900/Explorer/index.html#/abc.apptype/app/abc.app/service/abc.app%252webservices

我的问题是如何从这个 Azure 客户端 URL 调用我的 WebAPI 控制器和操作?

http://xyz.southeastasia.cloudapp.azure.com:1900/api/abc/getEmployee 不工作。

注意:此网址不安全,将被手机和网站使用。

【问题讨论】:

  • “不工作”是什么意思?你得到了什么 HttpStatus 代码? 404?
  • 将外部端口转发到负载均衡器上的内部端口 334,然后通过 http://{lbip}:extport/api/abc... 访问...
  • @MegaTron- 我在检查xyz.southeastasia.cloudapp.azure.com:19000 Url 时收到“无法得到任何响应。确保后端正常工作”.....

标签: asp.net-web-api azure-service-fabric


【解决方案1】:

您使用了错误的端口来访问您的应用程序。端口 19000 是管理端点。

Read 这个来设置你的 API。在端口 80 上运行您的应用程序(如果可能),

确保 Azure 负载均衡器具有针对集群节点上端口 80 外部的端口 80 的负载均衡规则。更多信息here

【讨论】:

    【解决方案2】:

    您需要为要使用的端口配置入站 TCP 规则。通常,您会将入站端口(例如端口 80)映射到应用程序正在侦听的端口(例如 344)。

    在 Azure 管理门户中,找到已部署的 Service Fabric 服务的资源组;在其中,应该有一个“负载均衡器”资源。 -- 点击那个。

    在那里,您应该找到一个名为“负载平衡规则”的窗格(很容易通过浅灰色图标查看它,它就在“入站 NAT 规则”的正上方)。

    使用配置刀片顶部的按钮,为您需要打开的端口“添加”规则;您应该给它一个有意义的名称(例如 HTTP 或 WebAPI 等)——对于“端口”,这是您要映射的面向公众的端口(例如 HTTP 的端口 80),对于后端端口,您可以将您实际监听的端口(例如 344)。

    最后,不要期望它立即生效。 -- 你会看到一个小的“更新”栏,你必须等待它完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-19
      • 2013-07-19
      • 1970-01-01
      • 2019-08-09
      • 2018-06-20
      • 1970-01-01
      • 1970-01-01
      • 2020-12-17
      相关资源
      最近更新 更多