V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mlhadoop
V2EX  ›  程序员

有什么框架能够把本地命令包装成 web api 的吗?

  •  
  •   mlhadoop · 2022-10-06 10:38:54 +08:00 · 2506 次点击
    这是一个创建于 540 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有一个黑盒程序,输入数据---》 黑盒 ---〉 输出本地数据; 想包装一下 通过 http 协议 以 api 的形式进行访问,有什么现成的解决方案吗?

    或者有什么其他关键词,比如 nodejs/python/java 等执行 命令行程序 等?

    14 条回复    2022-10-06 13:28:48 +08:00
    XhstormR02
        1
    XhstormR02  
       2022-10-06 10:52:56 +08:00 via Android   ❤️ 1
    socat ?
    xiaoz
        2
    xiaoz  
       2022-10-06 10:54:37 +08:00 via Android   ❤️ 1
    任何一门后端语言都可以吧,比如 PHP 的 exec()函数,golang 的 OS.Exec 都可以,推荐用 golang 可以编译成二进制随处运行。像 php 这种还要安装环境
    noones
        3
    noones  
       2022-10-06 10:58:12 +08:00   ❤️ 1
    框架没遇到过,自己写的话注意参数校验还有执行超时,手撸也很快
    just1
        4
    just1  
       2022-10-06 11:13:22 +08:00 via Android   ❤️ 2
    ...中国菜刀?
    clorischan
        5
    clorischan  
       2022-10-06 11:23:55 +08:00 via Android   ❤️ 1
    ttyd ?
    zyronon
        6
    zyronon  
       2022-10-06 11:24:50 +08:00
    ... 中国菜刀?+1
    zyronon
        7
    zyronon  
       2022-10-06 11:25:08 +08:00   ❤️ 1
    web shell 哈哈哈哈
    zyronon
        8
    zyronon  
       2022-10-06 11:28:05 +08:00   ❤️ 1
    装个 蚁剑 https://github.com/AntSwordProject/antSword
    然后再在本地放个 web shell ,用蚁剑连上就行了
    abersheeran
        9
    abersheeran  
       2022-10-06 11:33:59 +08:00   ❤️ 1
    dndx
        10
    dndx  
       2022-10-06 11:41:16 +08:00   ❤️ 2
    weishu
        11
    weishu  
       2022-10-06 12:02:59 +08:00 via Android   ❤️ 1
    Les1ie
        12
    Les1ie  
       2022-10-06 12:48:22 +08:00   ❤️ 2
    很简单,几分钟就可以写一个基础样例。
    举个例子:python 的 flask/fastapi 写一个接口,收到接口传进来的命令后用 subprocess 执行,把输出结果通过 api 返回去

    如果程序执行的时间比较久,需要异步等待结果的,或者不需要程序返回结果的,那就再看情况适配了。
    leonshaw
        13
    leonshaw  
       2022-10-06 13:07:54 +08:00   ❤️ 2
    这不就是 CGI
    manhere
        14
    manhere  
       2022-10-06 13:28:48 +08:00   ❤️ 2
    caddy + caddy-exec
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2855 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 14:27 · PVG 22:27 · LAX 07:27 · JFK 10:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.