如何三个web项目共用一个登陆界面?也就是用一个地址!

如何三个web项目共用一个登陆界面?也就是用一个地址!

妖妓 发布于 2021-11-30 字数 946 浏览 792 回复 12

我现在做一个web网站,有三个端,分别是root-根用户,administrator-管理员端,teacher-教师端.分别对应着三个项目,要用一个地址登陆(或域名).

这样做,1:一个地址登陆,对用户友好.

        2:对应三个项目,将来可以分开部署,部署到局域网里面不同的机器上.目前是都是在一个机器上.

        3:三种用户id都是数字,只是长度不同,也利用同意登陆.

效果如下:例如我用地址http://127.0.0.1出现的登陆页登陆后,

root登陆,就到了http://127.0.0.1/root

administrator登陆,就到了http://127.0.0.1/administrator

teacher登陆,就到了http://127.0.0.1/teacher,

但是问题是root,administrator,teacher是三个项目,甚至http://127.0.0.1(先称之为login)本身也有可能是一个项目.

我才疏学浅,遇见这样的需求,实在不知道该怎么办?应该可以做到吧,路过的好心人帮忙看看?

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(12

贱贱哒 2021-12-01 12 楼

其实大部分如此,就是还是却一点细节吧.

檐上三寸雪 2021-12-01 11 楼
<form onsubmit="return check();" ...>

<script>
   function check(){
     var idstr=document.getElementById('#idinput').value;
     if(idtr.length==root长度){
        document.forms[0].action="/root";
     } else if(idtr.length==administrator长度){
        document.forms[0].action="/administrator";
     } else{
         document.forms[0].action= "/teacher";
    }
    return true;
}
</script>

示例代码,不能真正运行。如果用jQuery,更容易实现。

滥情空心 2021-12-01 10 楼

如果不需要共享登陆信息, 三个页面做成一样不就得了!!!

最偏执的依靠 2021-12-01 9 楼

认证成功后返回,在浏览器的onload时,向接续对象用户webapp,admwebapp,rootwebapp再提交,把这个response作结果画面显示就行了。必要时包含开始的认证信息,javascript,ajax,jqurey等都能实现。

输什么也不输骨气 2021-12-01 8 楼

登录之后存redis信息,其他项目判断redis信息

绝影如岚 2021-12-01 7 楼

如果三个系统用户都能访问其他系统,那就做成单点登录(百度下cas单点登录之类的开源系统)

如果三个系统用户只能访问自己的系统,楼上说的很对,但也得根据你实际项目情况来定

天涯离梦残月幽梦 2021-12-01 6 楼

根据用户登录的id 进行路径的分发,到对应的界面

坚持沉默 2021-12-01 5 楼

登录后判断 根据不同的账号类型跳转到不同的路径呗。

哑剧 2021-12-01 4 楼

单点登录

屌丝范 2021-12-01 3 楼

你这有作弊嫌,和我的答案有什么区别?

蓝颜夕 2021-12-01 2 楼

回复
大哥,不好意思,其实应该给你的,希望你能释怀.

各自安好 2021-12-01 1 楼

1. 登录页面应该是放在主项目中,在登录后判断用户类型并返回到某个页面中

2. 在返回的页面中不输出任何内容,直接通过JS的window.location跳转到真正的页面,注意要把登录ID一些其他项目需要用到的初始化参数传递过去