如果给你一个 shell,你可以干什么?

使用函数计算API 网关做了一个web shell: 随时随地打开一个 shell,用完即走。

如果给你一个 shell,你可以干什么?

欢迎大家来玩,项目地址:

如果给你一个 shell,你可以干什么?

这个项目中我们用到了以下组件:

  1. 使用 nodejs 开发,通过 reactify 生成浏览器代码
  2. 根据用户输入的命令,把请求发送到 API 网关
  3. API 网关把请求发送到后端的函数计算,在函数中执行 shell 命令

函数的代码也非常简单:

'use strict';

var exec = require('child_process');

exports.handler = function(event, context, callback) {
  console.log('event: %s', event.toString());

  var evt = JSON.parse(event.toString());
  var cmd = evt['queryParameters']['cmd'];
  exec.exec(cmd, {}, function(err, stdout, stderr) {
    console.log(stdout, stderr);

    var body = '';
    if (err) {
      body = new Buffer(stderr).toString('base64');
    } else {
      body = new Buffer(stdout).toString('base64');
    }

    var resp = {
      statusCode: 200,
      isBase64Encoded: true,
      body: body,
    };
    callback(null, resp);
  });
};

欢迎大家来体验 serverless 构架的函数计算服务;
也欢迎有兴趣的同学加入一起开发函数计算:

上一篇:使用阿里云函数计算和 Websocket,轻松开发 Serverless 实时应用


下一篇:使用函数计算打包下载OSS文件