使无服务器的wsgi应用变得简单
wsgimagic的Python项目详细描述
欢迎来到wsgimagic!
目前,由无服务器功能支持的api网关的使用正以惊人的速度扩展,然而,每个提供程序 有自己的特殊方式将http请求呈现给后端。这意味着很多非常无聊,非常乏味 每次我们想使用新的服务时,都要为我们的开发人员工作。这个计划的目标是消除 不同的云提供商,并允许您专注于编写优秀的旧python wsgi api。
第一个目标环境是以aws lambda代理结尾的aws api网关的组合。 在您需要了解amazon是如何构造传入的请求信息以及如何发送该信息之前 回去给客户一个正确的答复。wsgimagic允许您使用一个基本的装饰器处理所有事情。 下面的示例演示了一个使用烧瓶的非常小的示例。
从烧瓶进口烧瓶
从wsgimagic.aws_lambda import lambda_magic
app=烧瓶(name)
@app.route('/hello',allowed_methods=['get']) 定义你好() 返回“hello world”
@Lambda_Magic(应用程序) def event_处理程序(事件、上下文): 通过
通过使用lambda_magic decorator,传入的api网关事件将自动转换为wsgi格式 并转交给你的申请。对于基本的请求处理,这是您需要做的全部工作。Lambda_魔法装饰师 还允许您指定需要添加的其他响应头,定义 应用程序将被告知它正在运行,并提供一个自定义错误处理程序,以防您的 请求。我将在不久的将来添加更多的书面文档,但是所有的函数都应该有合适的文档 提供任何其他可用功能的字符串。
长期来看,这个包的目标是为其他不通过http的无服务器提供者提供类似的装饰器。 预先翻译成wsgi格式的消息。