Python-接口开发入门解析
作者:wind1004 发布时间:2022-05-24 09:19:43
一、开发接口的作用
1、mock接口:模拟一些接口。有一些有关联的接口,在别的接口没有开发好的时候,需要用这个接口,就可以写一个假接口,返回想要的结果来模拟这个接口。
2、知道服务端的开发逻辑,有助于测试;
3、比如不想让其他人看很多数据库中的数据,可以通过接口只返回一部分数据。
二、开发一个接口
1、flask是一个轻量级的开发框架
__name__:代表当前这个python文件
server = flask.Flask(__name__) :把当前这个python文件,当做一个服务
2、一个无需传参数的get接口
其中,‘index'是接口的路径。
method如果不写,默认为get。如果需要支持多种,可以写成['get','post']
port是端口号,默认为5000。debug=True,这样改了代码之后,不需要重启服务,会自动重启。
先运行,然后用postman调用该接口,如下
可以看到,中文的编码之后的,想显示中文,按照下图方法即可
3、一个post接口
开发一个注册接口,请求参数为:username和passwd。如果数据库中有该用户,就返回用户已存在。如果该用户不存在,就在数据库插入一条数据,返回注册成功。
下面的代码需要连接数据库,连接数据库部分省略了。
为了让其他人也可以访问这个接口,可以用如下方法:
host=0.0.0.0表示只要在同一个局域网,别人访问的时候,用你的ip就可以访问了。ip指的是电脑的ip。
假如电脑的ip是10.2.88.122,那么别人电脑访问10.2.88.122:8999/reg即可。
三、开发接口目录
目录结构如下
主目录命名为了my_api,可以根据实际情况命名
bin:可执行文件,即启动程序
config:配置文件
data:放置一些数据,如sql、入参等
lib:主逻辑
logs:log
readme:一些说明
我们把上面的代码分到各个目录里面
1、配置文件config-setting.py
存放一些常量,如数据库的信息,redis的信息,端口号等
2、lib目录下tools.py
tools文件里写了怎么操作sql和redis
倒入setting里的信息,需要把my_api加到环境变量里。
在my_api文件夹上右击,选择mark directory as ->Source Root
导入setting
如果常量太多,则可以直接from config import setting
使用时,setting.MYSQL_INFO。用setting加点的方法。
3、lib目录下interface.py
这里写接口的主逻辑
4、bin目录下start.py
先从interface中导入server,从setting中导入端口号。
启动程序时,只需运行start.py即可
来源:https://www.cnblogs.com/zhxwind/p/11202629.html


猜你喜欢
- 使用EXECL转换时间戳的公式为:代码:=(xxxxxxxxxx+8*3600)/86400+70*365+19使用MYSQL语句解释时间戳
- 前言:在软件测试中,为项目编写接口自动化用例已成为测试人员常驻的测试工作。本文以python为例,基于笔者曾使用过的三种用例数据读取方法:x
- 1. 设置本地git账户邮箱和用户名输入命令git config --global user.name "Git账号"以
- 你不可能随时备份数据,但你的数据丢失时,或者数据库目录中的文件损坏时, 你只能恢复已经备份的文件,而在这之后的插入或更新的数据,就无能为力了
- 本文实例为大家分享了Django下完成文件上传和下载功能的具体代码,供大家参考,具体内容如下一、文件上传Views.pydef upload
- 一、简介eval()函数用来执行一个字符表达式的值,并返回表达式的值二、语法具体语法:eval(expression[, globals[,
- Ajax的流行给用户体验带来了很大程序的提升,而“注册“这项做为互联网最常用到的功能也自然而然的成为Ajax最常光顾的地方,实时判断用户输入
- 这一篇笔记介绍 Django 系统 model 的外键处理,ForeignKey 以及相应的处理方法。这是一种一对多的字段类型,表示两张表之
- 概述Python是个非常受欢迎的编程语言,随着近些年机器学习、云计算等技术的发展,Python的职位需求越来越高。下面我收集了10个Pyth
- 前言本文将介绍如何使用ONNX将PyTorch中训练好的模型(.pt、.pth)型转换为ONNX格式,然后将其加载到Caffe2中。需要安装
- SVG是XML来描述二维图形的语言。SVG可以构造3种类型的图形对象:矢量图形、位图图象和文字。图形对象可被组化、样式化、变形和重组,包括图
- 看代码吧~name = r"\u6697\u88d4\u5251\u9b54"print(name.encode(
- 本文实例讲述了JavaScript设计模式之代理模式。分享给大家供大家参考,具体如下:一、代理模式概念代理,顾名思义就是帮助别人做事,GoF
- offsetWidth 包括边框的宽度 clientWidth 不包括<table bord
- python高级特性1、集合的推导式•列表推导式,使用一句表达式构造一个新列表,可包含过滤、转换等操作。语法:[exp for item i
- 本文实例讲述了Python使用xlrd模块操作Excel数据导入的方法。分享给大家供大家参考。具体分析如下:xlrd是一个基于python的
- 任何一个行业里,当有一头近乎垄断的大象盘踞着的时候,生活在大象身后的蚂蚁们既是悲哀又是幸运的。悲哀的是市场已近乎被大象垄断留给他们的空间已经
- 本文实例为大家分享了python控制nao机器人身体动作的具体代码,供大家参考,具体内容如下今天读的代码,顺便写了出来,与文档的对比,差不多
- go module 是Go1.11版本之后官方推出的版本管理工具,并且从 Go1.13 版本开始, go module
- 使用Pycharm的时候需要导入解释器然后安装一些第三方库,讲道理都是project Interpreter里面直接install的。但是打