发布网友 发布时间:2022-12-01 01:02
共1个回答
热心网友 时间:2023-11-05 19:17
有一个需求,在web端已开发完成,现在要在app上重新开发一套,接口仍然使用原有的接口,不再额外开发,app上的部分功能不再额外开发,而是直接跳转到web页面。
我们的后台服务支持可配置。app登陆时需要配置可访问的后台服务地址,同时要配置前端服务的访问地址,因为我们采用了前后端分离部署,前后端服务的ip端口号都不一样,此时,app登陆时需要配置两个接口地址,操作太麻烦。
解决方案就是,app配置的接口地址,是前端的ip+端口号,不再配置后端地址。前端服务apache需要提供反向代理的功能,将app发来的访问后台接口的请求,转发到后台服务,同时将后台的响应返回给app。
前端服务地址:http://172.21.38.1:6060
后台服务地址:http://172.21.38.2:8080
本来app加载前端页面时,直接访问 http://172.21.38.1:6060/main/home ;访问后台接口时,直接访问 http://172.21.38.2:8080/api/getRoleList 。
apache提供反向代理后,app访问前端页面的方式不变,访问后端变成 http://172.21.38.1:6060/proxyA/api/getRoleList 。因为前端服务apache配置了proxyA的代理方式,所以会将该请求直接分发给后台地址。