前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Node在浏览器打开某个网页

使用Node在浏览器打开某个网页

作者头像
kai666666
发布2020-10-17 09:46:16
3.2K0
发布2020-10-17 09:46:16
举报
文章被收录于专栏:橙光笔记橙光笔记

使用Node在浏览器打开某个网页,其实就是使用子进程来用命令行打开网页链接就可以了,需要注意的是Mac系统使用的是open命令,Windows系统使用的是start命令,Linux等系统使用xdg-open命令。针对不同的操作系统使用不同的命令。

代码

首先创建一个index.js文件,然后写我们的代码:

代码语言:javascript
复制
const child_process = require('child_process');

var openURL = function (url) {
  // 判断平台
  switch (process.platform) {
    // Mac 使用open
    case "darwin":
      child_process.spawn('open', [url]);
      break;
    // Windows使用start
    case "win32":
      child_process.spawn('start', [url]);
      break;
    // Linux等使用xdg-open
    default:
      child_process.spawn('xdg-open', [url]);
  }
};

openURL("https://www.kai666666.top/");

运行

在当前命令行运行下面命令,可以看到浏览器已经打开我们的网页了。

代码语言:javascript
复制
node index.js

优化

往往在代码中直接写死地址是不好的,我们使用传过来的参数视为打开的URL,修改index.js文件最后1行代码:

代码语言:javascript
复制
- openURL("https://www.kai666666.top/");
+ let url = process.argv[2];
+ if (url) {
+   openURL(url);
+ } else {
+   console.log("请输入URL");
+ }

上面process.argv是一个数组,其中0下标的数据是node的路径,1下标的数据是执行文件也就是这里的index.js文件的路径,2到多下标中的数据是后面传入的数据,上面我们只检查2下标的数据。

最后使用下面命令启动:

代码语言:javascript
复制
node index.js https://www.kai666666.top/

更多

看到上面这你会不会想到,自己封装一下打开网页的方法呢?其实已经有人这么做了,你可以看看open库,它就是使用代码来打开网页的(其实不仅仅是网页),著名的webpack插件open-browser-webpack-plugin就是使用它在启动的时候打开一个页面。当然它是需要用代码来启动的,你可能希望直接在命令行来启动,就像我们上面那样,那你可以看看open库作者的另一个库:open-cli,内部也是使用open库来启动的,只是封装了一层命令行传URL的过程。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-07-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 代码
  • 运行
  • 优化
  • 更多
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档