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实现随机创建电话号码的方法示例
Dec 07 Python
Python 通过requests实现腾讯新闻抓取爬虫的方法
Feb 22 Python
python安装numpy和pandas的方法步骤
May 27 Python
Python+PyQT5的子线程更新UI界面的实例
Jun 14 Python
python中几种自动微分库解析
Aug 29 Python
pycharm修改file type方式
Nov 19 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
Dec 10 Python
Python统计时间内的并发数代码实例
Dec 28 Python
python GUI库图形界面开发之PyQt5选项卡控件QTabWidget详细使用方法与实例
Mar 01 Python
Django 拼接两个queryset 或是两个不可以相加的对象实例
Mar 28 Python
如何用Anaconda搭建虚拟环境并创建Django项目
Aug 02 Python
matplotlib绘制正余弦曲线图的实现
Feb 22 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
《雄兵连》系列首部大电影《烈阳天道》:可能是因为期望值太高了
2020/08/18 国漫
PHP开发入门教程之面向对象
2006/12/05 PHP
同一空间绑定多个域名而实现访问不同页面的PHP代码
2006/12/06 PHP
基于PHP一些十分严重的缺陷详解
2013/06/03 PHP
php strnatcmp()函数的用法总结
2013/11/27 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
jQuery 剧场版 你必须知道的javascript
2009/05/27 Javascript
js更优雅的兼容
2010/08/12 Javascript
IE下使用cloneNode注意事项分享
2012/11/22 Javascript
《JavaScript DOM 编程艺术》读书笔记之JavaScript 语法
2015/01/09 Javascript
跟我学习javascript的垃圾回收机制与内存管理
2015/11/23 Javascript
Javascript基础回顾之(二) js作用域
2017/01/31 Javascript
微信小程序中的onLoad详解及简单实例
2017/04/05 Javascript
详解webpack+vue-cli项目打包技巧
2017/06/17 Javascript
vue富文本框(插入文本、图片、视频)的使用及问题小结
2018/08/17 Javascript
使用Object.defineProperty如何巧妙找到修改某个变量的准确代码位置
2018/11/02 Javascript
Python写的Discuz7.2版faq.php注入漏洞工具
2014/08/06 Python
Python中的True,False条件判断实例分析
2015/01/12 Python
python虚拟环境virualenv的安装与使用
2016/12/18 Python
详解python中asyncio模块
2018/03/03 Python
30秒轻松实现TensorFlow物体检测
2018/03/14 Python
pyhton列表转换为数组的实例
2018/04/04 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
2019/04/27 Python
Django如何实现网站注册用户邮箱验证功能
2019/08/14 Python
关于Python形参打包与解包小技巧分享
2019/08/24 Python
python模拟点击在ios中实现的实例讲解
2020/11/26 Python
python FTP编程基础入门
2021/02/27 Python
Canvas 文本填充线性渐变的使用详解
2020/06/22 HTML / CSS
中国宠物用品商城:E宠商城
2016/08/27 全球购物
阿根廷旅游网站:almundo阿根廷
2018/02/12 全球购物
幼儿园老师辞职信
2014/01/20 职场文书
期中考试后的反思
2014/02/08 职场文书
设备管理实施方案
2014/05/31 职场文书
改进作风怎么办发言材料
2014/08/17 职场文书
试了下Golang实现try catch的方法
2021/07/01 Golang
mysql查找连续出现n次以上的数字
2022/05/11 MySQL