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下载Bing图片(代码)
Nov 07 Python
下载给定网页上图片的方法
Feb 18 Python
web.py中调用文件夹内模板的方法
Aug 26 Python
python实现udp数据报传输的方法
Sep 26 Python
Python处理RSS、ATOM模块FEEDPARSER介绍
Feb 18 Python
Python 网页解析HTMLParse的实例详解
Aug 10 Python
python使用matplotlib库生成随机漫步图
Aug 27 Python
opencv导入头文件时报错#include的解决方法
Jul 31 Python
浅谈Django+Gunicorn+Nginx部署之路
Sep 11 Python
Pandas实现dataframe和np.array的相互转换
Nov 30 Python
python实现快递价格查询系统
Mar 03 Python
Python学习之路之pycharm的第一个项目搭建过程
Jun 18 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
FCKeditor添加自定义按钮
2008/03/27 PHP
PHP集成FCK的函数代码
2008/09/27 PHP
php GUID生成函数和类
2014/03/10 PHP
静态的动态续篇之来点XML
2006/08/15 Javascript
JS获取url链接字符串 location.href
2013/12/23 Javascript
基于jquery实现图片放大功能
2016/05/07 Javascript
AngularJS bootstrap启动详解及实例代码
2016/09/14 Javascript
详解微信小程序入门五: wxml文件引用、模版、生命周期
2017/01/20 Javascript
NodeJs测试框架Mocha的安装与使用
2017/03/28 NodeJs
微信小程序开发之toast等弹框提示使用教程
2017/06/08 Javascript
vue2.0+vuex+localStorage代办事项应用实现详解
2018/05/31 Javascript
vue中组件的3种使用方式详解
2019/03/23 Javascript
jquery ui 实现 tab标签功能示例【测试可用】
2019/07/25 jQuery
解决Layui数据表格的宽高问题
2019/09/28 Javascript
Vue.js页面中有多个input搜索框如何实现防抖操作
2019/11/04 Javascript
一篇文章带你使用Typescript封装一个Vue组件(简单易懂)
2020/06/05 Javascript
Vue(定时器)解决mounted不能获取到data中的数据问题
2020/07/30 Javascript
小程序实现录音功能
2020/09/22 Javascript
Vue使用路由钩子拦截器beforeEach和afterEach监听路由
2020/11/16 Javascript
el-table表头根据内容自适应完美解决表头错位和固定列错位
2021/01/07 Javascript
[06:49]2018DOTA2国际邀请赛寻真——VirtusPro傲视群雄
2018/08/12 DOTA
[48:47]VGJ.S vs NB 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
Python使用回溯法子集树模板解决迷宫问题示例
2017/09/01 Python
很酷的python表白工具 你喜欢我吗
2019/04/11 Python
Python Django框架实现应用添加logging日志操作示例
2019/05/17 Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
2020/02/26 Python
HTML5手机端弹出遮罩菜单特效代码
2016/01/27 HTML / CSS
canvas 如何绘制线段的实现方法
2018/07/12 HTML / CSS
新加坡交友网站:be2新加坡
2019/04/10 全球购物
党员培训思想汇报
2014/01/07 职场文书
班班通项目实施方案
2014/02/25 职场文书
学雷锋宣传标语
2014/06/25 职场文书
2014年小学体育工作总结
2014/12/11 职场文书
2015年小学体育教师工作总结
2015/10/23 职场文书
Spring Boot DevTools 全局配置学习指南
2022/03/31 Java/Android