pyhton【flask接口开发】
使用flask进行接口开发
语言:Python3
框架:flask
在进行开发前首先得安装flask,然后才能使用。安装可以直接使用pip命令进行安装:pip install flask。
使用flask进行接口的流程:
1、定义一个服务server:
server = flask.Flask(__name__) #创建一个服务,把当前的python文件当做一个服务启动,__name__代表当前的python文件。
2、定义接口函数:
接口函数的定义需要在定义函数上面加上flask提供的装饰器 “@server.route()”,将普通函数转换为服务登录接口。
@server.route('/regist',methods=['get','post']) #第一个参数表示请求接口路径,第二个参数表示接口请求方式,如果不填的话默认get方式。
3、运行服务server:
server.run(port=8000,debug=True,host='127.0.0.1') # port不能与本地服务端口冲突,host为要访问的IP地址,debug=True,表示当前为调试状态运行,修改完代码程序会自动运行,不需要手动重新运行。
按照以上步骤完成一个小接口:
示例一:
import flask,json
server = flask.Flask(__name__) #创建一个服务,把当前的python文件当做一个服务启动,__name__代表当前的python文件。
@server.route('/regist',methods=['post']) #第一个参数表示请求接口路径,第二个参数表示接口请求方式,如果不填的话默认get方式。
def index():
res = {'msg':'这是我开发的第一个接口','msg_code':''}
return json.dumps(res,ensure_ascii=False) #二进制转化为utf-8
server.run(port=8000,debug=True,host='127.0.0.1') #port不能与本地服务端口冲突,host为要访问的IP地址,debug=True,表示当前为调试状态运行,修改完代码程序会自动运行,不需要手动重新运行。
使用postman请求后结果如下:

示例二:
接口实现接收请求数据,并对接收数据按照一定方式进行验证签名,签名通过后,获取接口请求过来的用户信息,查找数据库中是否存在该条记录,无记录进行注册步骤。
import flask,json
server = flask.Flask(__name__) #__name__代表当前的python文件。把当前的python文件当做一个服务启动
@server.route('/regist',methods=['post']) #接口请求地址及接口请求方式
def regist():
jsondata = flask.request.get_json() #获取到的值为请求的json串
username = jsondata['username'] if ('username' in jsondata) else ''
password = jsondata['password'] if ('password' in jsondata) else ''
signjudge = signMD5.signjudge()
if signjudge.jsonsignjudge(jsondata) != jsondata['sign']:
########## 签名校验失败 ##########
return json.dumps({'msg': '签名校验失败', 'msg_code': '3001'}, ensure_ascii=False)
else:
pass
if username == '' or password == '':
########## 缺少必填信息 ##########
return json.dumps({'msg': '缺少必填信息', 'msg_code': '1001'}, ensure_ascii=False)
else:
pass
interfacejudge = interfcaejudge.interfacejudge()
if interfacejudge.judgefielduser(username) != None:
return json.dumps({'msg': '用户已存在', 'msg_code': '2001'}, ensure_ascii=False)
else:
interfacejudge.insertsuerinfo(username,password)
return json.dumps({'msg': '注册成功', 'msg_code': ''}, ensure_ascii=False)
server.run(port=8000,debug=True,host='127.0.0.1')
pyhton【flask接口开发】的更多相关文章
- python学习之flask接口开发,环境变量扩展,网络编程requests
python基础 flask之mock接口 所谓mock接口,其实就是我们在正式接口还没联调或者是测试接口没有正式使用时,自己创建一个模拟接口,来供项目暂时打通功能或者测试流程梳理的桥梁,而我们这儿使 ...
- Python flask模块接口开发学习总结
引言 Flask 是一个简单且十分强大的Python web 框架.它被称为微框架,“微”并不是意味着把整个Web应用放入到一个Python文件,微框架中的“微”是指Flask旨在保持代码简洁且易于扩 ...
- 实战接口开发:python + flask + mysql + redis(根据反馈,持续细化更新。。。)
前言 自动化已经成为测试的必备技能之一了,所以,很多想跳槽的测试朋友都在自学,特别是最实用的接口自动化, 但是很多人因为没有可以练手的项目而苦恼,最终导致缺乏实战经验,其实,完全可以自己开发个简单项目 ...
- python——flask常见接口开发(简单案例)
python——flask常见接口开发(简单案例)原创 大蛇王 发布于2019-01-24 11:34:06 阅读数 5208 收藏展开 版本:python3.5+ 模块:flask 目标:开发一个只 ...
- python学习笔记:接口开发——PythonWEB框架之Flask
Flask是一个使用 Python 编写的轻量级 Web 应用框架,安装命令如下 pip install flask 一.服务端接口是怎么开发的? 1.启动一个服务 2.接收到客户端传过来的数据3.登 ...
- mock接口开发——flask模块
1.mock接口开发: #1.模拟没有开发好的接口,你可以模拟它,,,,,,,需要调用其他系统的接口 #2.给别人提供数据 2.步骤:1.安装pip install flask 2.导入模块--起服务 ...
- 基于Python的Flask的开发实战(第二节程序的基本结构)
1.初始化 所有的flask程序都必须创建一个程序实例 web服务器使用wsgi接口协议,把接收客户端的请求都转发给这个程序实例来进行处理.这个程序实例就是flask对象 from flask imp ...
- python之接口开发基础知识
一.开发接口的作用 1.mock 服务:在别的接口没有开发完成的时候可以模拟一些接口以便测试已经开发完成的接口,例如假的支付接口,模拟支付成功.支付失败. 2.了解接口是如何实现的:数据交互.数据返回 ...
- Python基础-修改excel、redis、接口开发、组织代码
pymysql模块补充内容 1. 游标.description():显示表的字段属性 (什么是游标:游标用于交互式应用,就好比word里的光标一样,要修改某个地方,要先把光标移动到这里) 用好这个方法 ...
随机推荐
- Thymeleaf常用语法:自定义数据转换类
在模板文件中,可以使用“${{...}}”表达式进行数据转换,Thymeleaf会使用配置好的数据转换类,来实现转换.例如一个User对象,简单起见假设有姓名和年龄两个字段,对象的toString() ...
- Centos 静态网络配置
cat /etc/sysconfig/network-scripts/ifcfg-ens33 DEFROUTE="yes" IPV4_FAILURE_FATAL="no& ...
- 自定义v-color指令
在自定义指令的时候,和js行为有关的,最好就写在inserted中去,防止js代码不生效.和样似有关的操作放在bind中去Vue.direactive [d儿 Rai K T V] 没有s哈 < ...
- acwing 167. 木棒
乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过50个长度单位. 然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度. 请你设计一个程序,帮助乔 ...
- Java的异常处理方式
一.异常简介 异常结构图 Throwable是类,Exception和Error都继承了该类,error是因为系统内部错误或者资源耗尽错误,这种情况很少出现,而且error也不允许被抛出在Except ...
- DirectShow 进行视频预览和录制
这一篇讲怎么采集摄像头图像并预览,以及录制视频到本地. 程序实现流程 这里通过使用 CaptureGraphBuilder 来简化 Graph 的创建流程. 具体流程如下: 初始化 COM 库 创建各 ...
- mysql 数据库分表小实例
项目开发中,我们的数据库数据越来越大,随之而来的是单个表中数据太多.以至于查询书读变慢,而且由于表的锁机制导致应用操作也搜到严重影响,出现了数据库性能瓶颈. 当出现这种情况时,我们可以考虑分表,即将单 ...
- vscode打开文件在同一个tab的问题
当我们单击或者 cmd+鼠标左键单击打开文件时,有时候是在同一个窗口,有时候是新的窗口,这是啥样呢? 这是因为vscode有 "预览模式" , 当是预览模式时,打开的是当前窗口 ...
- 最全各种系统版本的XPosed框架资料下载整理
由于XPosed在不同安卓系统版本中对应的版本不同,给很多新手造成极大困扰,本文作者经过几番努力,给大家整理了各个版本对应的xposed框架版本以及相关资料,并附上相关下载链接,希望对大伙有所帮助. ...
- Netty—TCP的粘包和拆包问题
一.前言 虽然TCP协议是可靠性传输协议,但是对于TCP长连接而言,对于消息发送仍然可能会发生粘贴的情形.主要是因为TCP是一种二进制流的传输协议,它会根据TCP缓冲对包进行划分.有可能将一个大数据包 ...