大家好,我是你们的章鱼猫。
今天要给大家介绍一个牛逼的功能 webify,它能够直接将函数或者命令行工具转化为 Web 服务。比如我们将 jq 封装成一个 Web 服务如下:
webfiy 是一个非常基础的 CGI 服务,所有的请求都会路由到这个 CGI 脚本上。最初的设计目标是希望能够尽可能的做到零配置。webify 通过调用需要封装的命令行脚本,然后将请求的 body 传入标准输入 stdin。然后标准输出 stdout 像 HTTP 响应一样回传到 client 调用方。过程中如果封装的脚本返回了非 0 的结果,则 HTTP 请求会返回 500。
其实现在有不少的 serverless 的框架也是使用类似的机制来处理服务之间的交互。对于使用者来说只需要关注其自身的逻辑,其他的都交给框架和基础设施来处理。
整体使用上比较简单,我们来看一个 Python 的例子。
2. 连接 stdin 和 stdout
3. 本地 shell 测试
4. 通过 webify 转化为 Web 服务
更多项目详情请查看如下链接。
开源项目地址:https://github.com/beefsack/webify
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8