多个系统共用一套后端微服务,前端该怎么处理

Blade 未结 1 15

一、该问题的重现步骤是什么?

把之前多个历史系统(不同时期版本的saber+boot, lemon+boot开发,数量大概有8个) 想整合成到  bladex 4.7 cloud版本,避免各系统缺少signkey无法跳转,以及相同的组织架构来回重复维护复制。问题是前端怎么处理?

1. 前端是分成不同的saber3仓库各自维护,还是放一套saber3里来维护?放一套以后多人合作不好发布版本,我是打算分成不同的库

2. 菜单怎么区别不同的系统?从用户角度来说,每个系统点进去就是该系统的那套菜单,是不是menu表和dict,dict_biz等这些数据表加一列 clientID,把后端接口改一下,根据Bearer解析出来的clientID,查询返回不同的菜单?
3. 多应用互相跳转,token前端怎么处理?对于后端来说就是一个token通用,前端携带token跳转?

4. 历史版本的前端想尽量不动,有个别是lemon开发的,不支持signkey,作者也不维护了,重写工作量很大;是不是前端把signkey问题解决就可以了?后端框架我搭一个4.7的saber3用来对接框架,其它各系统的业务接口还是按以前的接口调用都不动,最多统一加个前缀,因为业务并没有变。

二、你期待的结果是什么?实际看到的又是什么?

前端实现的建议,尽量前端不动,后端还是按之前接口发布业务,只是框架升级

三、你正在使用的是什么产品,什么版本?在什么操作系统上?

多个历史版本,整到bladex 4.7  ,linux

四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

1条回答
  • 你已经有改造方案了,就按照你的方案来就行了,你可以所有的后端和前端都整合到一套前后端里,系统模块增加一个clientId的字段来进行不同业务系统的区分,他的逻辑和租户的字段隔离很像,每次调用的时候都在尾部增加从token获取的clientId就行了,这样不同的token访问数据,获取的就是系统隔离的数据。

    另外lemon作者周末不答疑不代表就不维护了,系统是支持public-key的。

    0 讨论(0)
提交回复