【发布时间】:2019-08-02 20:30:15
【问题描述】:
我正在制作一个 iOS 和 Android 应用程序。我们需要应用程序中的充值功能。我们正计划使用一家公司提供的 Recharge API。
出于安全原因,API 仅允许通过特定 IP 列入白名单的 IP 地址进行请求。
理想情况下,此 IP 地址应该是我们服务器的 IP。
但我们在我们的应用中使用 Firebase 作为数据库以及存储和身份验证。
那么我们如何才能使我们的用户通过应用程序发出的 API 请求能够通过并且不会导致错误,因为用户的 IP 地址不会被列入白名单?
【问题讨论】:
-
您需要将来自您的应用的请求代理到充值 API。您不应直接从您的应用程序调用 API,而应通过具有列入白名单的 IP 地址的代理。根据 API 的性质,您可以使用现成的解决方案,如 NGINX 或 HAProxy,或使用您选择的任何语言编写自定义服务器
-
你能给我一些参考链接告诉我如何做到这一点?
-
您需要一个具有公共 IP 地址的服务器。您可以从 DigitalOcean、Linode 或 Vultr 获得一个,然后安装 HAProxy。如果您可以管理 Linux,我可以在答案部分中指导如何使用 HAProxy 执行此操作。
-
是的,我可以管理 Linux,而且我知道如何部署服务器。
标签: android ios firebase networking ip-address