本篇内容介绍了“ie跳转chrome案例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
一、介绍
客户有个两个系统,系统一兼容IE,系统二兼容谷歌,需要实现系统的单点登录,从系统一进入系统二,也就是从IE跳转谷歌打开系统二。
实现方案:客户机开放一个nodejs服务,将请求进行转发,使用nodejs的 child_process 组件启动谷歌浏览器访问目标链接。
二、准备工作
安装nodejs,根据操作系统的版本选择安装包,安装过程不再赘述。
http://nodejs.cn/download/
安装完成,测试:
三、新建文件 ie2chrome.js (一定是在英文路径下),文件内容编码格式为 utf-8
var http = require('http'); var open = require('open'); var url = require('url'); var cp = require('child_process'); http.createServer(function (request, response) { //编码设置 response.writeHead(200, {'Content-Type': 'text/plain;charset=utf-8'}); //获取get请求中的参数 var requset_url = request.url; //将字符串格式参数转化为对象使用 var param = url.parse(requset_url,true).query //跳转的页面 var redirect_uri = 'start chrome http://www.baidu.com?userId='+param.userId; //谷歌浏览器打开,需反编译 //open(decodeURIComponent(redirect_uri), "chrome"); //cp.exec('start chrome http://www.baidu.com') cp.exec(redirect_uri); // 发送响应数据 "Hello World" response.end('祝您工作愉快~已跳转其他页面打开系统。\n'); }).listen(8888); // 终端打印如下信息 console.log('Server running at http://127.0.0.1:8888/');
四、安装 child_process 组件
执行 npm install child_process ,安装默认路径一般是 (C:\Users\w\node_modules) 路径中根据用户名不一样不一样
从已安装过的文件中复制出来和ie2chrome.js 放到同级
五、测试
打开命令窗口执行:
如果报错可以设置一下环境变量:NODE_PATH=E:\workspace\ie2chrome\node_modules
访问:http://localhost:8888/?userId=aaaa
六、设置为系统自动启动,我尝试过注册为系统服务,但是无法启动谷歌,没找到原因,这里改成设置系统启动项,开机自动启动服务
新建 run.vbs
Set ws = CreateObject("Wscript.Shell") ws.run "cmd /c node ie2chrome.js",vbhide
新建 run.bat
@echo off set NODE_PATH=%~dp0\node_modules ::执行 start "" %~dp0\"run.vbs" ::执行完命令后关闭cmd命令窗口 taskkill /f /im cmd.exe exit
测试:双击运行 run.bat 一闪而过
打开任务管理器
访问:http://localhost:8888/?userId=aaaa
run.bat 右键创建快捷方式,把创建好的快捷方式剪切放到目录下(不同电脑路径可能不同):
C:\Users\w\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup 。
开始-》运行 输入:msconfig 查看启动项:
重启电脑,访问:http://localhost:8888/?userId=aaaa
如果报错,尝试如下解决方案,再重新创建快捷方式,复制到启动项
“ie跳转chrome案例分析”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。