微结构

parfait的Python项目详细描述


快速启动

在本教程中,您将使用 chalice 命令行实用程序 创建和部署一个基本的rest api。 首先,您需要安装 chalice 。使用virtualenv 建议:

$ pip install virtualenv
$ virtualenv ~/.virtualenvs/chalice-demo
$ source ~/.virtualenvs/chalice-demo/bin/activate

注意: 确保您使用的是python2.7、python3.6或python3.7。 这些是aws lambda当前支持的唯一python版本,因此 也是 chalice cli和 chalice 支持的唯一版本 python包。您可以通过以下方式检查virtualenv中的python版本 运行:

# Double check you have a supported python version in your virtualenv
$ python -V

接下来,在您的virtualenv中,安装 chalice

$ pip install chalice

您可以运行:

$ chalice --help
Usage: chalice [OPTIONS] COMMAND [ARGS]...
...

创建项目

接下来我们要做的是使用 chalice 命令创建一个新的 项目:

fromchaliceimportChaliceapp=Chalice(app_name="helloworld")@app.route("/")defindex():return{"hello":"world"}
1

这将创建一个 helloworld 目录。光盘到这个 目录。您将看到为您创建了几个文件:

fromchaliceimportChaliceapp=Chalice(app_name="helloworld")@app.route("/")defindex():return{"hello":"world"}
2

现在可以忽略 .chalice 目录,这两个主文件 我们关注的是 app.py requirements.txt

让我们看看a p p.py文件:

fromchaliceimportChaliceapp=Chalice(app_name="helloworld")@app.route("/")defindex():return{"hello":"world"}
3

新项目的 命令创建了一个示例应用程序,该应用程序定义了 单个视图, / ,调用时将返回json主体 {"hello":"world"}

部署

让我们部署这个应用程序。确保您在 地狱世界中 目录并运行chalice deploy

fromchaliceimportChaliceapp=Chalice(app_name="helloworld")@app.route("/")defindex():return{"hello":"world"}
4

现在,您已经使用api网关和lambda启动并运行了一个api:

fromchaliceimportChaliceapp=Chalice(app_name="helloworld")@app.route("/")defindex():return{"hello":"world"}
5

尝试从 索引()更改返回的词典 功能。然后,您可以通过运行 chalice deploy来重新部署更改。

对于这些教程的其余部分,我们将使用 httpie 而不是 curl (https://github.com/jakubroztocil/httpie" rel="nofollow">https://github.com/jakubroztocil/httpie)测试我们的API。你可以安装 httpie 使用 pip install httpie ,或者如果您在Mac上,您可以运行 brew安装httpie 。github链接有更多关于安装的信息 说明。下面是一个使用 httpie 请求根目录的示例 我们刚刚创建的api的资源。注意,命令名是http

fromchaliceimportChaliceapp=Chalice(app_name="helloworld")@app.route("/")defindex():return{"hello":"world"}
6

此外,api网关端点将缩短为 https://endpoint/api/ 简明扼要。一定要替换 https://endpoint/api/ 对于 当您部署api时会显示cli(它看起来像 https://abcdefg.execute api.us-west-2.amazonaws.com/api/

下一步

现在,您已经使用 chalice 创建了第一个应用程序。

接下来的几个部分将建立在这个快速启动部分的基础上,并介绍 您可以使用其他功能,包括:url参数捕获, 错误处理、高级路由、当前请求元数据和自动 策略生成。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java LibGDX:在特定矩形中添加justTouched()   泛型类和通配符的java上界   java从类调用servlet时,我的会话始终为空   java如何为处理其他异常时抛出的异常获取正确的链接堆栈跟踪?   javascript Spring stomp使用SimpMessageTemplate从服务器发送消息   从java到php的查询被某些东西切断了   classpath如何在具有通配符名称的Java jar中发现资源?   java处理崩溃后的事务   java如何通过在Okhttp中传递对象来发出POST请求?   java如何在一个文本字段中显示整个数据库的详细信息   java Android“不幸的是,<app>已经停止。”   错误Java Spring“URL必须以jdbc开头”   MenuItemCompat的java UnsupportedOperationException。setOnActionExpandListener   命名Java队列为什么是“轮询”和“提供”?   java我想得到大写字母表,而不必按大写锁定键和shift键   java如何在JCommander中获取参数的输入顺序?   Javaservlet/JSP Cookie断开连接   多线程Java线程和图形2D