我这边一个 web 项目,需要 iframe 显示两个分公司的网站页面。但是实际上这两个分公司网站都是同一个 web 程序,应要求部署在同一个 web 网页地址,只不过是在授权登陆之后用一个“分公司状态”来进行区分分公司。
所以在操作 iframe 页面里面的时候,如果产生请求,这两个网站程序视为同一个网站,cookie 就会互窜,数据混在一起了。
想问一下能不能通过设置 iframe 就实现无痕模式。这样 cookie 应该就不会互窜了
我这边一个 web 项目,需要 iframe 显示两个分公司的网站页面。但是实际上这两个分公司网站都是同一个 web 程序,应要求部署在同一个 web 网页地址,只不过是在授权登陆之后用一个“分公司状态”来进行区分分公司。
所以在操作 iframe 页面里面的时候,如果产生请求,这两个网站程序视为同一个网站,cookie 就会互窜,数据混在一起了。
想问一下能不能通过设置 iframe 就实现无痕模式。这样 cookie 应该就不会互窜了
1
cc1024 Feb 11, 2022 本身就是同一个程序,如项目采用 session 形式改造繁琐工作量大。
1.通过跨域形式访问,即主页面和 2 个 iframe 是完全独立的;缺点 iframe 里需要重新登录,且配置不方便,耦合度高。 2.不采用 session ,使用接口形式,以 API-AUTH 方式认证调用(或其他认证);缺点前后端不分离相当于重构。 3.通过拦截器,正确访问请求时,先获取当前使用者的分公司状态,重定向或设置指定参数,在业务逻辑中依据状态操作数据,从而达到分离的效果。 仅作参考非最优方案 |
2
Biwood Feb 11, 2022 既然是两个公司,那么用两个域名不就好了。懒得新增域名的话,那只能给不同公司的 cookie 数据加前缀以进行隔离。
|
3
az22c OP > 既然是两个公司,那么用两个域名不就好了。懒得新增域名的话,那只能给不同公司的 cookie 数据加前缀以进行隔离。
@Biwood 其实 iframe 里面的是一个后管项目。切换分公司只是想看不同的分公司数据而已 |
4
az22c OP @cc1024 其实最基本的,iframe 里面的系统作为老系统,无论如何都绕不过要解决“不同分公司的 cookie 重名”的问题。
目前该后管系统正是基于 cookie session 机制,据说这个系统解决 cookie 重名问题很麻烦 |
5
dbolo123 Feb 11, 2022
有个思路不知道是否可行,不同分公司使用不同的 session name (就是存 session id 的 cookie name ),处理的时候动态修改这个 session name
|