https://github.com/abersheeran/aligi
为阿里无服务函数提供API网关的协议解析
https://github.com/abersheeran/aligi
wsgi
Last synced: 6 months ago
JSON representation
为阿里无服务函数提供API网关的协议解析
- Host: GitHub
- URL: https://github.com/abersheeran/aligi
- Owner: abersheeran
- License: mit
- Created: 2019-08-09T17:17:59.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2020-08-15T20:56:21.000Z (about 5 years ago)
- Last Synced: 2025-04-11T07:12:38.531Z (6 months ago)
- Topics: wsgi
- Language: Python
- Homepage:
- Size: 30.3 KB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# aligi
Aliyun Gateway Interface
为无服务函数计算作为阿里云 API 后端运行提供转析,并且允许同一个无服务函数既支持 HTTP 触发器,也支持作为 API 网关的后端服务。
## 为什么会有这个库?
使用 Flask,Django 等支持标准 WSGI 协议的 Web 框架创建无服务函数时,使用HTTP触发器才能让它们正常运行。
但如果想使用无服务函数作为阿里云 API 网关的后端时,则无法直接使用这些函数,只能通过网络调用,这显然是不够高效、并且费钱的。
## 如何安装
在项目根目录下执行
```
pip install -t . aligi
```## 如何使用
以下为一个最小的 Flask 样例
```python
from flask import Flask
from aligi import WSGIapp = Flask(__name__)
@app.route("/")
def hello_world():
return "Hello, World!"# 阿里云无服务函数的入口
handler = WSGI(app)
```其中`app`可以是任意一个标准 WSGI Application。
在 Django 项目中,它一般在项目的`wsgi.py`里。
## 参考文档
阿里云文档:
- [HTTP 触发器](https://help.aliyun.com/document_detail/74756.html?spm=a2c4g.11186623.2.29.4a4b6482rl6rYZ#h2--http-2)
- [API 网关触发器](https://help.aliyun.com/document_detail/74800.html?spm=a2c4g.11186623.6.696.24bd2ebcuaTlC2)