使用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接口开发】的更多相关文章

  1. python学习之flask接口开发,环境变量扩展,网络编程requests

    python基础 flask之mock接口 所谓mock接口,其实就是我们在正式接口还没联调或者是测试接口没有正式使用时,自己创建一个模拟接口,来供项目暂时打通功能或者测试流程梳理的桥梁,而我们这儿使 ...

  2. Python flask模块接口开发学习总结

    引言 Flask 是一个简单且十分强大的Python web 框架.它被称为微框架,“微”并不是意味着把整个Web应用放入到一个Python文件,微框架中的“微”是指Flask旨在保持代码简洁且易于扩 ...

  3. 实战接口开发:python + flask + mysql + redis(根据反馈,持续细化更新。。。)

    前言 自动化已经成为测试的必备技能之一了,所以,很多想跳槽的测试朋友都在自学,特别是最实用的接口自动化, 但是很多人因为没有可以练手的项目而苦恼,最终导致缺乏实战经验,其实,完全可以自己开发个简单项目 ...

  4. python——flask常见接口开发(简单案例)

    python——flask常见接口开发(简单案例)原创 大蛇王 发布于2019-01-24 11:34:06 阅读数 5208 收藏展开 版本:python3.5+ 模块:flask 目标:开发一个只 ...

  5. python学习笔记:接口开发——PythonWEB框架之Flask

    Flask是一个使用 Python 编写的轻量级 Web 应用框架,安装命令如下 pip install flask 一.服务端接口是怎么开发的? 1.启动一个服务 2.接收到客户端传过来的数据3.登 ...

  6. mock接口开发——flask模块

    1.mock接口开发: #1.模拟没有开发好的接口,你可以模拟它,,,,,,,需要调用其他系统的接口 #2.给别人提供数据 2.步骤:1.安装pip install flask 2.导入模块--起服务 ...

  7. 基于Python的Flask的开发实战(第二节程序的基本结构)

    1.初始化 所有的flask程序都必须创建一个程序实例 web服务器使用wsgi接口协议,把接收客户端的请求都转发给这个程序实例来进行处理.这个程序实例就是flask对象 from flask imp ...

  8. python之接口开发基础知识

    一.开发接口的作用 1.mock 服务:在别的接口没有开发完成的时候可以模拟一些接口以便测试已经开发完成的接口,例如假的支付接口,模拟支付成功.支付失败. 2.了解接口是如何实现的:数据交互.数据返回 ...

  9. Python基础-修改excel、redis、接口开发、组织代码

    pymysql模块补充内容 1. 游标.description():显示表的字段属性 (什么是游标:游标用于交互式应用,就好比word里的光标一样,要修改某个地方,要先把光标移动到这里) 用好这个方法 ...

随机推荐

  1. angularjs实现购物车批量删除,filter模糊查询,排序

    数据源 $scope.data=[ {num:1234,name:"ipad",price:3400.00,count:10}, {num:1235,name:"ipho ...

  2. [20191119]探究ipcs命令输出2.txt

    [20191119]探究ipcs命令输出2.txt --//继续上午的测试:http://blog.itpub.net/267265/viewspace-2664758/=>[20191119] ...

  3. oracle常用查询sql

    oracle常用查询sql 原创 gordon陈 发布于2018-05-10 22:32:18 阅读数 297 收藏 展开 #!/bin/sh## create by Gordon Chen echo ...

  4. Linux-3.14.12内存管理笔记【伙伴管理算法(2)】

    前面已经分析了linux内存管理算法(伙伴管理算法)的准备工作. 具体的算法初始化则回到start_kernel()函数接着往下走,下一个函数是mm_init(): [file:/init/main. ...

  5. 2. Linux-3.14.12内存管理笔记【系统启动阶段的memblock算法(2)】

    memory:表示可用可分配的内存: 结束完memblock算法初始化前的准备工作,回到memblock算法初始化及其算法实现上面.memblock是一个很简单的算法. memblock算法的实现是, ...

  6. 008.MongoDB分片群集概念及原理

    一 MongoDB分片介绍 1.1 分片 Mongodb另一种集群,就是分片技术,可以满足MongoDB数据量大量增长的需求. 当MongoDB存储海量的数据时,一台机器可能不足以存储数据,也可能不足 ...

  7. 201871010111-刘佳华《面向对象程序设计(java)》第十四周学习总结

    201871010111-刘佳华<面向对象程序设计(java)>第十四周学习总结 实验十二  Swing图形界面组件(一) 实验时间 2019-11-29 第一部分:基础知识总结 1.设计 ...

  8. txt换行追加写入

    with open(negative_txt, 'a') as f: patch_name1 = patch_name + '\n' f.write(patch_name1)

  9. NOIP 2016 玩具谜题

    洛谷 P1563 玩具谜题 洛谷传送门 JDOJ 3136: [NOIP2016]玩具谜题 D1 T1 JDOJ传送门 Description 小南有一套可爱的玩具小人, 它们各有不同的职业. 有一天 ...

  10. linux,xshell命令

     一. linux  1.Linux发行版 <1> 常见的发行版本如下: Ubuntu Redhat Fedora openSUSE Linux Mint Debian Manjaro M ...