项目:某数据管理平台
场景:原项目代码冗余,数据多又乱,需要新建项目,而且后端接口也要新启项目。并且使用微服务代价比较大(其实就是还不用微服务呢)
PM:希望两个项目共用一个登录
项目架构:前后端分离,前端由单独的nodejS编写的server服务去加载。登录也是在nodejs里接入的
方法:在两个项目的打包路径上,分别加上不同的前缀
原项目打包路径前缀:/ui/* ,打包位置:./server/static
新项目打包路径前缀:/iap/* ,打包位置:./server/dist
然后再nodejs中 使用express中间件,分别加载两个项目的打包文件
再拦截 /ui , /iap 转发到对应的后端接口地址。
因为nodejs中之前已经接了登录了,所以能走到上述中间件的时候,都是已经登录的状态,能拿到登录信息,而且两个项目共享一个登录状态。