FastAPI Web开发入门、进阶与实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.2 新建FastAPI项目

2.1节已经把本地开发环境搭建成功了,针对类似的依赖包安装可能超时或失败等问题,本书也给出了对应的解决方案。接下来就要小试牛刀,正式进入FastAPI框架应用的介绍了。

2.2.1 新建简单项目

第一次打开PyCharm时会出现图2-19所示的界面,其中“Projects”(项目)选项卡中包括创建新项目(New Project)、打开新的项目(Open)、从仓库导入新的项目(Get from VCS)3个选项,读者可以结合自己的实际情况来选择。

图2-19 PyCharm首界面

如果读者之前已打开过PyCharm IDE,则默认会直接打开上次打开过的项目。此时也可以通过菜单栏中的“New Project”选项进行新建项目的操作,New Project界面如图2-20所示。

在New Project界面上会显示要新建项目的配置信息,如图2-21所示。下面新建一个新的项目并将其命名为chapter01,指定项目当前使用的Python解析器为Python 3.9.10版本。当配置好选项信息之后,单击界面下方的“Create”按钮。

对图2-21中所示的选项信息简单介绍如下:

❑Location:新建项目代码的存储路径。

❑New environment using Virtualenv:表示当前项目使用Virtualenv来构建新的虚拟环境。

❍Location:新的虚拟环境的创建目录。

❍Base interpreter:新的虚拟环境使用的Python解析器。

❑Previously configured interpreter:表示可以选择的已存在的虚拟环境。

❑Create a main.py welcome script:默认给当前项目创建一个main.py的脚本文件。

为了便于后续工程示例代码的管理,这里的项目配置如图2-22所示。

图2-20 New Project界面

图2-21 新建项目的配置信息

图2-22 项目配置

注意

这里设定新建的虚拟环境的目录为D:\fastapi_tutorial\.virtualenvs,这样可便于后续项目使用同一个虚拟环境,主要是为了方便管理项目。读者也可以为每一个项目案例单独分配独立虚拟环境。

项目创建完成后的界面如图2-23所示。

图2-23 项目创建完成后的界面

2.2.2 项目依赖库的安装

本小节介绍安装当前项目需要使用的相关依赖库。之前介绍过通过PIP安装相关依赖库的方法,这里选择的是使用IDE下的命令行进行依赖包的安装(下文中的所有依赖库都会使用这一种方式来安装)。

下面对FastAPI框架会用到的依赖库进行简单说明。

1.常用依赖库

FastAPI框架常用的主要依赖库如下:

❑email.validator:主要用于邮件格式校验处理。

❑requests:使用单例测试TestClient或请求第三方接口时需要使用该依赖库。

❑aiofiles:主要用于异步处理文件读写操作。

❑jinja2:主要供用户渲染静态文件模板时使用,当项目要使用后端渲染模板时安装该依赖库。

❑Python-multipart:当需要获取From表单数据时,只有通过这个库才可以提取表单的数据并进行解析。

❑itsdangerous:用于在SessionMiddleware中间件中生成Session临时身份令牌。

❑graphene:需要GraphQLApp支持时安装这个依赖库。

❑orjson:主要用于JSON序列化和反序列化,如使用FastAPI提供的ORJSONR-esponse响应体处理时,则需要安装这个依赖库。

❑ujson:主要用于JSON序列化和反序列化,如需要使用FastAPI提供的UJSONResponse响应体时就需要安装该依赖库。

❑uvicorn:主要用于运行和加载服务应用程序Web服务。

2.单独安装的方法

如果希望单独引入某个依赖包,则可以在Terminal会话窗口中输入如下命令(这里以安装uvicorn依赖包为例):

3.全部安装的方法

如果仅安装某个或某几个依赖包,那么在使用过程中可能会因为缺失其他依赖包而产生异常,而且这类问题处理起来会比较麻烦。为了避免出现这样的问题,读者还可以进行全部安装:

注意

这里选择的是全部安装。对于部分章节所依赖的库,也会有相关说明。

执行完成上述的安装命令后,可以通过pip list命令查看当前解析器下所有的依赖库:

可以通过IDE查看解析器下的相关安装,如图2-24所示。

图2-24 查看解析器下的相关安装