牛逼,自动将函数或者命令行工具转换成 Web 服务
阅读本文大概需要 3 分钟。
大家好
今天要给大家介绍一个牛逼的功能 webify,它能够直接将函数或者命令行工具转化为 Web 服务。比如我们将 jq 封装成一个 Web 服务如下:
webfiy 是一个非常基础的 CGI 服务,所有的请求都会路由到这个 CGI 脚本上。最初的设计目标是希望能够尽可能的做到零配置。webify 通过调用需要封装的命令行脚本,然后将请求的 body 传入标准输入 stdin。然后标准输出 stdout 像 HTTP 响应一样回传到 client 调用方。过程中如果封装的脚本返回了非 0 的结果,则 HTTP 请求会返回 500。
其实现在有不少的 serverless 的框架也是使用类似的机制来处理服务之间的交互。对于使用者来说只需要关注其自身的逻辑,其他的都交给框架和基础设施来处理。
整体使用上比较简单,我们来看一个 Python 的例子。
首先假设我们有一个路径查找的函数,如下:
连接 stdin 和 stdout
本地 shell 测试
通过 webify 转化为 Web 服务
更多项目详情请查看如下链接。
开源项目地址:https://github.com/beefsack/webify
推荐阅读
1
2
3
4
崔庆才
静觅博客博主,《Python3网络爬虫开发实战》作者
隐形字
个人公众号:进击的Coder
长按识别二维码关注
评论