政务服务平台网站端登录认证功能
关于蒙速办APP登陆认证功能和政务服务平台登陆认证功能区别:
- 1.一个是从APP里面获取登陆信息;另一个是从浏览器获取其他网站的登陆信息
- 2.都是重定向到登陆认证页面,回调地址一个是通过参数传入;另一个是配置应用的时候配置的
- 3.一个是返回
code再通过code去请求用户信息;另一个是直接返回用户信息通过本地jar包解密用户信息 - 4.一个是有开发者后台注册应用信息;另一个是需要联系对方技术人员进行注册
- 5.一个是开发调试直接使用的公网域名可以调试;另一个是需要使用内网ip进行调试。
重定向的实现可以分为两种方法:
- 1.前端重定向:
window.location.href = url- 2.后端接口重定向:
HttpServletResponse response response.sendRedirect(url);
一、政务服务平台网站端登录认证功原理整体分析:
二、第三方应用前端项目核心代码
mounted() {
this.initZwProcess(); //登陆认证功能
}
methods: {
initZwProcess() {
let { token } = this.$route.query
let { zwLogin } = this.$store.state
if (token) {//token【这里说明是从登陆认证返回,保存授权认证标识state.zwLogin防止下次又进入授权认证页面】
this.$store.commit("changeZwLogin", token)
// alert("统一登陆成功!token:" + token)
} else if(!zwLogin){//没有进行授权认证【这里说明不是登陆认证返回也没有进行授权认证=>就去走授权认证】
this.toZwLogin()
}
},
toZwLogin(){
let url = "http://xxxx/account/zwfwLogin" //统一登陆接口
window.location.href = url
},
}
因为政务登陆认证调试需要使用政务的内网环境,这里使用的是本地调试方法
前端项目调试步骤:
- 0.启动后台项目,生成
本地回调接口地址 - 1.联系政务开发人员注册应用(需要提供应用回调接口地址),会生成
client_id和client_secret字符串- 应用回调接口可以写
本地启的后台服务的接口地址
- 应用回调接口可以写
- 2.使用vpn连接到政务内网环境
- 3.启动前端项目,重定向到政务登陆认证页面。政务登陆认证逻辑处理,回调登陆信息到
本地后台服务的接口。 - 4.本地后台服务接口将
用户信息破解后拼接到参数重定向到前端。 - 5.前端获取到登陆信息。【完成】
三、第三方应用后端项目示例
第三方应用后端项目这里暂不公开,需要代码的联系我。
这个后台项目包含两个模块,其中
zwlogin模块对应的就是政务的登陆认证的后台功能。
主要作用就是提供接口供前端项目使用:
account/zwfwLogin:这个接口实现重定向到政务登陆认证页面(不用这个也可以,直接让前端重定向即可。)account/zwfwUserinfo:这个接口实现登陆认证回调接口功能,获取到用户信息后进行解密,然后再携带token重定向到前端页面
需要注意的是:上面的
token信息这一步还没有去实现。 正常应该是获取到政务登陆的用户信息后,后台再走一个自己的登陆将【token及其他登陆信息】返回到前端。