实战:vue仿dos命令界面

关注[前端小讴],阅读更多原创技术文章

业务需求

vue项目中弹出窗口,在窗口中执行dos命令

技术栈

  • vue + nodejs(child_process+koa)
  • child_process是nodejs的子进程模块,child_process.exec可创建shell,然后在shell里执行命令。然而,child_process并不在webpack打包中,页面中打印child_process是一个不包含任何方法的空对象{},因此需要用nodejs做服务端

完成效果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CqZUEV9E-1615278622841)(/img/bVcPmz2)]

服务端:cmd.js

const Koa = require("koa"); // 引入koa
const Router = require("koa-router"); // 引入koa-router

const app = new Koa(); // 创建koa应用
const router = new Router(); // 创建路由,支持传递参数

const bodyParser = require("koa-bodyparser"); // 处理post请求
app.use(bodyParser()); // 配置post bodyparser的中间件

const cors = require("koa-cors"); // 设置跨域
app.use(cors()); // 全部允许跨域

const iconv = require("iconv-lite"); // iconv进行转码
iconv.skipDecodeWarning = true;

const child_process = require("child_process");

// 对exec进行封装,返回一个Promise对象,便于处理
function doShellCmd(cmd) {
   
  let str = cmd;
  let result &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值