我们正在为iOS和Android平台构建一个应用程序,该应用程序依赖于通过REST API调用进行通信的Web应用程序。该Web应用程序具有自己的用户界面来定义实体,并托管在三个环境中以便于管理。用于开发人员和质量检查团队测试的test.mydomain.com; uat.mydomain.com(供项目涉众验证)和mydomain.com(供公共最终用户使用)。
所做的任何更改都会在进行必要的验证和确认后通过test-> uat->生存周期。
该移动应用还提供三种口味-测试; at生活。测试版本指向test.mydomain.com作为API终结点,并由开发人员和测试人员通过USB部署加载到平板电脑和手机上。对于uat,无论是使用testflight还是使用其Android等效版本,对于直播,都使用应用商店。
当错误报告公开时,我们希望使用开发人员可以在test.mydomain.com中拥有的测试数据来重现该错误报告。但是,从应用程序商店下载的应用程序将指向实时服务器mydomain.com作为其API端点。当然,我们可以为应用程序版本进行准确的源提交,构建和测试,但是我希望在应用程序中动态更改API端点,以便我可以测试许多场景。 / p>
“动态”一词的意思是我想在运行时像通过设置菜单一样更改API端点。不利之处是普通最终用户不能访问此菜单,尽管可以用密码保护它。然后,密码成为通用密码,为了规避我不得不提出其他一些逻辑。
关于如何动态/在运行时切换API端点,但同时又不允许最终用户使用此功能,是否还有更好的主意?我想到了Android的解决方案,当点击内部版本号7次时,它会公开“开发人员设置”。但是,尽管要在此之前检查一下。
答案 0 :(得分:0)
我们可以通过创建多个方案来动态切换API端点,并在每个方案中指定应用程序的端点,以便每次从选择方案中更改应用程序端点时都可以,而不必每次都手动更改端点