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里的光标一样,要修改某个地方,要先把光标移动到这里) 用好这个方法 ...
随机推荐
- MySQL 优化 (四)
参数优化 innodb_log_buffer_size 此参数确定些日志文件所用的内存大小,以M为单位.缓冲区更大能提高性能,对于较大的事务,可以增大缓存大小. innodb_log_buffer_s ...
- 示例:Oracle表锁、行锁模拟和处理
for update模拟锁表 --session 1 SQL> select * from tt for update; --session 2 SQL> update tt set id ...
- android binder 进程间通信机制3-Binder 对象生死
以下概述Binder通信过程中涉及到的四个对象:Binder本地对象.Binder实体对象.Binder引用对象.Binder代理对象的生死. 1.Binder通信的交互过程 1.Client 进程发 ...
- java8一些语法使用例子
package com.ladeng.jdk8; import com.google.common.collect.Lists;import java.util.*;import java.util. ...
- Python爬虫(requests模块)
Requests是唯一的一个非转基因的Python HTTP库,人类可以安全享用. Requests基础学习 使用方法: 1.导入Requests模块: import requests 2.尝试用g ...
- JS运动---运动基础(匀速运动)
[一]运动基础 (2)基础运动案例 <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...
- java自定义函数调用
一:主类中自定义函数 在主类中,如果想要在main函数中调用自定义的其他方法,则这个函数需要使用static关键字定义,否则会报错Cannot make a static reference to t ...
- LG2145 「JSOI2007」祖码 区间DP
问题描述 LG2145 题解 把颜色相同的一段看做一个点. 然后类似于合唱队区间DP即可. 但是这题好像出过一些情况,导致我包括题解区所有人需要特判最后一个点. \(\mathrm{Code}\) # ...
- flex.css声明式布局
flex.css能完美的运行在移动端的各种浏览器,甚至能运行在ie10+的各种PC端浏览器中 flex和data-flex flex.css 有两个版本,一个是flex.css一个是data-flex ...
- EggJs快速入门
Egg.js 简介 Egg.js 为企业级框架和应用而生,帮助开发团队和开发人员降低开发和维护成本. 专注于提供 Web 开发的核心功能和一套灵活可扩展的插件机制,不会做出技术选型,因为固定的技术选型 ...