【发布时间】:2018-06-19 09:57:01
【问题描述】:
是否可以通过在 Azure 中运行的 Web API 对 Azure 之外的应用程序进行 HTTP 调用?
我正在尝试将 Azure 中的 ASP.NET Web API 连接到在我公司的 PC 上运行的 wpf 应用程序。两个应用程序都使用 带有 JSON 的 HTTP 调用 相互请求数据。这在本地工作得很好,因为我可以使用 localhost 但
在 Azure 中运行 Web API 时,Web API 无法访问 wpf 应用程序
我研究了 Azure 点到站点和站点到站点 连接,但我发现的大多数示例都显示了与 Azure 中的 VM 的连接,而与 Web API 无关。
提前致谢!
【问题讨论】:
-
您如何在 wpf 应用程序中验证通信?什么是协议?有防火墙吗?通常 wpf 应用程序会首先与 Web 应用程序对话以建立连接,而不是相反。
-
现在 Google Home 会调用 Web API。 WPF 应用程序用于使用 HTTPListener 根据来自 Google Home 的触发器显示信息。进行这些调用,显示信息,仅此而已。为了进行调用,我使用了一个 .NET HTTP Client 对象和 HTTPResponseMessage 对象。
-
我真的看不出为什么你的 azure web api 不能调用任何 http 地址。我认为它将基于您的 wpf 应用程序的 url。如果它是一个 IP 地址,则必须是您的外部 IP 地址,而不是您的本地网络 IP 地址。
-
用这个myexternalip.com检查你的外部IP地址
-
我已经尝试过了,但是使用公共 IP 时 Web API 停止响应。我的猜测是防火墙阻止了这个,但这就是为什么我考虑使用 VPN 来绕过这个问题。将 Web API 发布到 Azure 后,我还没有找到获取崩溃信息的方法,因此很遗憾我无法为您提供详细信息。