正规不收费的网站,pc网站开发语言,济南做网站优化价格,手机版网站建设开发最近搞得单点登录碰到了很多问题#xff0c;具体的问题有如下几个#xff1a; ①如何获取usbkey的值 ②要实现的单点登录的方案 ③如何获取多个key的值#xff0c;并进行选择登录 ④ie跳谷歌访问业务界面 注#xff1a;最后将实现代码附上#xff0c;希望对大家有所帮助 1… 最近搞得单点登录碰到了很多问题具体的问题有如下几个 ①如何获取usbkey的值 ②要实现的单点登录的方案 ③如何获取多个key的值并进行选择登录 ④ie跳谷歌访问业务界面 注最后将实现代码附上希望对大家有所帮助 1、具体实现代码如下
!DOCTYPE html
html langen
headmeta charsetUTF-8title登录/titlescript typetext/javascript src../js/jquery-10.1.min.js/script
/head
body onloaddoLogin()
object classidclsid:000000-AAAA-4CC2-83C7-34SEEE98B6E idusb_ocx nameusb_ocx styleVISIBILITY:hiddencodebaseIB_USBKEY.ocx width100 height10/object
/body
script//执行单点登录function doLogin() {try{rtn1 usb_ocx.setCurrentDev();}catch (e){}var caServerIp127.0.0.1;var username;rtnusb_ocx.VgetnameFirst(caServerIp,1);if(rtn.match(#.)){if(rtn#2){rtnusb_ocx.Vgetname(password123,caServerIp,1);if(rtn.match(#.)){if(rtn#2){alert(状态错误!需要输入PIN码)}}return;}else{alert(没有插入key或者key错误)return;}}if(rtn.indexOf(\\)-1){alet(USBKEY not find username);return;}else{username rtn.substring(rtn.lastIndexOf(\\)1,rtn.length);if(username||usernamenull){alet(USBKEY not find username);return;}}$.ajax({url: /bbdq-collection-tool/api/login/doLoginSign?userIdusername,method: GET,async: true,success: function (data) {// 在active前面打印日志跳转有时会出现问题只有打开f12才能跳转//console.log(data);var obj new ActiveXObject(WScript.Shell)//启动 Chrome 浏览器袁转向登录页面obj.Run(chrome data, 0, false);}})}
/script2、上面代码分析及注意点
①必须放到里面必须通过body的onload方法去加载js
问题1刚开始把放到外面用jquery的初始化函数去实现发现不行 问题2要获取2个key这行代码必须得有
rtn1 usb_ocx.setCurrentDev();问题3ie跳谷歌跳转失败首先代码必须是以下这样的
var obj new ActiveXObject(WScript.Shell)
//启动 Chrome 浏览器袁转向登录页面
obj.Run(chrome https://www.baidu.com, 0, false);问题3.1ie跳转谷歌需要配置activex 问题3.2在active前面打印日志跳转有时会出现问题只有打开f12才能跳转