Android连接到MySQL并执行基本的添加和删除查询操作
准备工作 导入 jar 包 下载 mysql-connector-java 包(吃过亏的表示推荐 5.x.x 版本,8.x.x 版本会出现挺多问题的):mysql-connector-java 下载地
顺晟科技
2021-06-16 10:40:51
360
事件
在微信中打开需要授权的web应用时,通常要跳转到微信授权地址:
https://open.weixin.qq.com/connect/oauth2/authorize?
appid=xxxx
重定向_uri=www.myapp.com
response _ type=代码
scope=snsapi_base
状态=xxxx
#微信_重定向
授权成功后,会自动用authCode返回redirect_uri参数指定的地址,然后在开发者后端的登录界面用authCode登录,最后手动跳转到目标页面(这个具体的页面可以在授权前记录,然后拿出来跳转),一切都很自然。
问题
但是会有这样一种需求:如果用户按下手机的物理按键或者滑动全屏返回,最终会到达处理授权登录的页面,从而再次触发登录,再次跳回,无法退出应用。
计划
在成功检索后端登录界面之后,跳转到目标页面之前,通过window.history.replaceState()方法手动添加历史,例如:
window . history . replace state(null,null,window . location . protocol '/' window . location . host '/#/微信_ exit ');
这样不会直接跳转到/微信_exit,但是下次用户返回时会通过!同时注意,我们用replaceState()代替了pushState(),因为replaceState()清除了之前的历史,使得用户无法手动返回授权登录页面。
然后全局观察捕捉这个历史,到达/微信_exit时,主动调用微信界面closeWindow()关闭申请表。以vue为例,添加路由拦截进行全局观察:
router.beforeEach((to,from,next)={
if(to . path==='/微信_exit') {
common .get微信atSDK(wx={
wx . closewindow();
});
}
}
common .get微信atSDK()是封装微信js sdk接口的方法。采集成功后,调用closeWindow()接口。更多js接口,请参考https://work.weixin.qq.com/api/doc#90001/90144/90540
28
2021-08
28
2021-08
28
2021-08
16
2021-06
16
2021-06
16
2021-06