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 查看解析器下的相关安装