一个应用程序作为 azure 应用程序服务托管并尝试调用另一个应用程序 运行 localhost - 给出 500 错误

one app is hosted as azure app service and trying to call another app running with localhost - giving 500 error

如果我将 app2 托管为 azure 应用程序服务,我会收到 500 错误,如果我 运行 在本地通过 localhost,则没有问题。

这是本地主机上的阻塞吗,我们该怎么做?

“localhost”指的是当前机器,在大多数情况下会转换为 ip4 127.0.0.1。因此,如果您的应用服务“app2”正在调用“localhost”,它基本上是在调用自身,而不是您托管“app1”的机器。

如果您想通过 Azure 应用服务在本地计算机上调用“app1”运行ning,则需要在您的计算机上将“app1”公开到 Internet。

你需要知道你机器后面的 public ip,确保你的路由器等可以将流量从 public ip 路由到你机器的内部网络 ip(可能有根据防火墙、路由器、网络基础设施,如果“app1”运行是否在 IIS Express 上运行,您将 运行 解决大量其他问题,...)。

只需将“app1”和“app2”作为应用服务托管在 Azure 上。