Python-接口开发入门解析


Posted in Python onAugust 01, 2019

一、开发接口的作用

1、mock接口:模拟一些接口。有一些有关联的接口,在别的接口没有开发好的时候,需要用这个接口,就可以写一个假接口,返回想要的结果来模拟这个接口。

2、知道服务端的开发逻辑,有助于测试;

3、比如不想让其他人看很多数据库中的数据,可以通过接口只返回一部分数据。

二、开发一个接口

1、flask是一个轻量级的开发框架

__name__:代表当前这个python文件

server = flask.Flask(__name__) :把当前这个python文件,当做一个服务

Python-接口开发入门解析

2、一个无需传参数的get接口

其中,‘index'是接口的路径。

method如果不写,默认为get。如果需要支持多种,可以写成['get','post']

port是端口号,默认为5000。debug=True,这样改了代码之后,不需要重启服务,会自动重启。

Python-接口开发入门解析

先运行,然后用postman调用该接口,如下

Python-接口开发入门解析

可以看到,中文的编码之后的,想显示中文,按照下图方法即可

Python-接口开发入门解析

3、一个post接口

开发一个注册接口,请求参数为:username和passwd。如果数据库中有该用户,就返回用户已存在。如果该用户不存在,就在数据库插入一条数据,返回注册成功。

下面的代码需要连接数据库,连接数据库部分省略了。

Python-接口开发入门解析

为了让其他人也可以访问这个接口,可以用如下方法:

Python-接口开发入门解析

host=0.0.0.0表示只要在同一个局域网,别人访问的时候,用你的ip就可以访问了。ip指的是电脑的ip。

假如电脑的ip是10.2.88.122,那么别人电脑访问10.2.88.122:8999/reg即可。

三、开发接口目录

目录结构如下

Python-接口开发入门解析

主目录命名为了my_api,可以根据实际情况命名

bin:可执行文件,即启动程序

config:配置文件

data:放置一些数据,如sql、入参等

lib:主逻辑

logs:log

readme:一些说明

我们把上面的代码分到各个目录里面

1、配置文件config-setting.py

存放一些常量,如数据库的信息,redis的信息,端口号等

Python-接口开发入门解析

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加点的方法。

Python-接口开发入门解析

3、lib目录下interface.py

这里写接口的主逻辑

Python-接口开发入门解析

4、bin目录下start.py

先从interface中导入server,从setting中导入端口号。

启动程序时,只需运行start.py即可

Python-接口开发入门解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python的SimPy库简化复杂的编程模型的介绍
Apr 13 Python
python自定义类并使用的方法
May 07 Python
详解Python中的静态方法与类成员方法
Feb 28 Python
python利用lxml读写xml格式的文件
Aug 10 Python
python读取文本中的坐标方法
Oct 14 Python
对python多线程与global变量详解
Nov 09 Python
linux查找当前python解释器的位置方法
Feb 20 Python
Python中三元表达式的几种写法介绍
Mar 04 Python
python 5个实用的技巧
Sep 27 Python
如何使用Pytorch搭建模型
Oct 26 Python
Django框架请求生命周期实现原理
Nov 13 Python
Python自动化工具之实现Excel转Markdown表格
Apr 08 Python
Python列表(list)所有元素的同一操作解析
Aug 01 #Python
详解numpy.meshgrid()方法使用
Aug 01 #Python
解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available
Jul 31 #Python
numpy中的meshgrid函数的使用
Jul 31 #Python
pandas的排序和排名的具体使用
Jul 31 #Python
pandas如何处理缺失值
Jul 31 #Python
详细介绍pandas的DataFrame的append方法使用
Jul 31 #Python
You might like
PHP4(windows版本)中的COM函数
2006/10/09 PHP
php登录超时检测功能实例详解
2017/03/21 PHP
javascript 有用的脚本函数
2009/05/07 Javascript
JS代码优化技巧之通俗版(减少js体积)
2011/12/23 Javascript
解析js原生方法创建表格效率测试
2013/07/08 Javascript
JavaScript判断密码强度(自写代码)
2013/09/06 Javascript
ECMAScript6的新特性箭头函数(Arrow Function)详细介绍
2014/06/07 Javascript
javascript实现的登陆遮罩效果汇总
2015/11/09 Javascript
拥有一个属于自己的javascript表单验证插件
2016/03/24 Javascript
js将滚动条滚动到指定位置的简单实现方法
2016/06/25 Javascript
JS取模、取商及取整运算方法示例
2016/10/13 Javascript
如何正确理解javascript的模块化
2017/03/02 Javascript
原生JS实现导航下拉菜单效果
2020/11/25 Javascript
node前端模板引擎Jade之标签的基本写法
2018/05/11 Javascript
浅析Vue 防抖与节流的使用
2019/11/14 Javascript
jQuery实现弹幕特效
2019/11/29 jQuery
整理 node-sass 安装失败的原因及解决办法(小结)
2020/02/19 Javascript
js实现抽奖功能
2020/11/24 Javascript
[14:56]教你分分钟做大人:巫医
2014/10/30 DOTA
[01:13:01]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第三场
2018/04/05 DOTA
python中遍历文件的3个方法
2014/09/02 Python
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
Django+Ajax+jQuery实现网页动态更新的实例
2018/05/28 Python
Python实现通过继承覆盖方法示例
2018/07/02 Python
对python添加模块路径的三种方法总结
2018/10/16 Python
对python多线程与global变量详解
2018/11/09 Python
使用Python实现将多表分批次从数据库导出到Excel
2020/05/15 Python
基于Tensorflow读取MNIST数据集时网络超时的解决方式
2020/06/22 Python
Python不支持 i ++ 语法的原因解析
2020/07/22 Python
使用Python pip怎么升级pip
2020/08/11 Python
美国睫毛、眉毛精华液领导品牌:RevitaLash Cosmetics
2018/03/26 全球购物
GANT葡萄牙官方商店:拥有美国运动服传统的生活方式品牌
2018/10/18 全球购物
法定代表人授权委托书
2014/09/19 职场文书
六查六看心得体会
2014/10/14 职场文书
教师师德表现自我评价
2015/03/05 职场文书
导游词之南京栖霞山
2019/10/18 职场文书