接口开发01--mock接口
开发接口的常见场景:
1、mock接口,模拟一些接口,在别的接口没有开发好的时候,你需要测试,可以先模拟一个假接口来测试。比如常见
2、若需要调用第三方接口时,比如支付接口。
3、查看数据,比如开放数据库的部分数据时,开发一个接口供他人使用。
1.定义一个接口:
@server.route('/index',methods=['get']) #在函数上面加@server.route()表示该index()函数为一个接口,若参数没写的话,默认是get请求。
def index(): #定义一个函数

2.第一个接口:
import flask,json
server = flask.Flask(__name__) #把当前这个python文件,当做一个服务,定义Server(启动服务)
@server.route('/index',methods=['get']) #接口装饰器,get请求
def index():
res = {'msg':'这是我开发的第一个接口','msg_code':0} #定义一个字典
return json.dumps(res,ensure_ascii=False) #将字典转化成json串,ensure_ascii=False将unicode转成十进制
server.run(port=7777,debug=True,host='0.0.0.0') #启动服务。debug=True,改了代码之后,不用重启它会自动帮你重启redis
# host=0.0.0.0表示别人访问的时候,用你的ip就可以访问了。
运行接口:

get请求,直接在浏览器访问http://127.0.0.1:7777/index,如图:

3.第二个接口:
传入两个参数,username,passwd来注册用户,使用post请求,如:
import flask,json
# __name__,代表当前这个python文件
server = flask.Flask(__name__) #把咱们当前这个python文件,当做一个服务(启动服务)
def my_db(sql):
import pymysql
coon = pymysql.connect(
host='118.24.3.xx', user='jxzx', passwd='',
port=3306, db='jxzx', charset='utf8')
cur = coon.cursor() #建立游标
cur.execute(sql)#执行sql
if sql.strip()[:6].upper()=='SELECT':
res = cur.fetchall()
else:
coon.commit()
res = 'ok'
cur.close()
coon.close()
return res @server.route('/reg',methods=['post'])
def reg():
username = flask.request.values.get('username')#
pwd = flask.request.values.get('passwd')
print('username..',username)
if username and pwd:
sql = 'select * from my_user where username="%s";'%username
# res = my_db(sql)
if my_db(sql):
res = {'msg':'用户已存在','msg_code':2001}
else:
insert_sql = 'insert into my_user (username,passwd,is_admin) values ("%s","%s",0);'%(username,pwd)
my_db(insert_sql)
res = {'msg':'注册成功!','msg_code':0}
else:
res = {'msg':'必填字段未填,请查看接口文档!','msg_code':1001}
# 1001必填字段未填
return json.dumps(res,ensure_ascii=False) server.run(port=7777,debug=True,host='0.0.0.0') #debug=True,改了代码之后,不用重启它会自动帮你重启
启动服务

使用postman调用接口reg(),如:

接口开发01--mock接口的更多相关文章
- C#微信公众号接口开发实例-高级接口-申请带参数的二维码
最近公司涉及到微信绑定用户,做了高级接口-申请带参数的二维码,总结了下微信开发接口.微信接口开发都是除了消息用的xml 回复基本上都是用json的形式传递信息(post/get),开发的方法基本都是一 ...
- FastAPI(六十七)实战开发《在线课程学习系统》接口开发--用户登陆接口开发
接上一篇文章FastAPI(六十六)实战开发<在线课程学习系统>接口开发--用户注册接口开发.这次我们分享实际开发--用户登陆接口开发. 我们先来梳理下逻辑 1.查询用户是否存在2.校验密 ...
- 接口开发---basic auth接口认证
开发中遇到了basic auth来认证的案例,这里总结一下: Basic Auth简单点说明就是每次请求API时都提供用户的username和password.[base64encode(userna ...
- 测试开发系列之Python开发mock接口(一)
什么是mock接口呢,举个栗子,你在一家电商公司,有查看商品.购物.支付.发 货.收获等等等一大堆功能,你是一个测试人员,测测测,测到支付功能的时候,你就要调用第三方支付接口了,真实支付,直接扣你支付 ...
- 7-4 python 接口开发(提供mock服务)
1.登录接口开发(数据存在数据库中) 接口开发做mock(模拟功能) tools.py import pymysql def my_db(sql): conn = pymysql.connect(h ...
- Python(七) —— mock接口开发
mock接口开发 接口开发有很多框架,诸如 Django,flask,相比较而言,flask 是轻量级web开发框架,用来开发 mock 接口的不二之选.那你可能会问,什么叫 mock 接口呢?moc ...
- python学习笔记(十三)接口开发
一.开发接口的作用 1.mock接口,模拟一些接口,在别的接口没有开发好的时候,需要开发一些模拟接口进行调试和测试. 2.查看数据,比如,获取所有学员信息的接口,就不需要提供数据库的查看信息. 二.接 ...
- C#微信公众号接口开发,灵活利用网页授权、带参数二维码、模板消息,提升用户体验之完成用户绑定个人微信及验证码获取
一.前言 当下微信公众号几乎已经是每个公司必备的,但是大部分微信公众账号用户体验都欠佳,特别是涉及到用户绑定等,需要用户进行复杂的操作才可以和网站绑定,或者很多公司直接不绑定,而是每次都让用户填写账号 ...
- C#.NET微信公众账号接口开发系列文章整理--微信接口开发目录,方便需要的博友查询
前言: 涉及微信接口开发比较早也做的挺多的,有时间的时候整理了开发过程中一些思路案例,供刚学习微信开发的朋友参考.其实微信接口开发还是比较简单的,但是由于调试比较麻烦,加上微信偶尔也会给开发者挖坑,并 ...
- 在线支付接口之PHP支付宝接口开发简单介绍
php100:92:在线支付接口之PHP支付宝接口开发 支付接口一般是第三方提供的代收款.付款的平台,可以通过支付接口帮助企业或个人利用一切可以使用的支付方式.常见支付平台:支付宝.快钱.云网支付.财 ...
随机推荐
- 【论文解读】[目标检测]retinanet
作为单阶段网络,retinanet兼具速度和精度(精度是没问题,速度我持疑问),是非常耐用的一个检测器,现在很多单阶段检测器也是以retinanet为baseline,进行各种改进,足见retinan ...
- 完整ASP.Net Excel导入
//把EXCEL文件上传到服务器并返回文件路径 private String typename(FileUpload fileloads) { str ...
- es6中class类的全方面理解(一)
传统的javascript中只有对象,没有类的概念.它是基于原型的面向对象语言.原型对象特点就是将自身的属性共享给新对象.这样的写法相对于其它传统面向对象语言来讲,很有一种独树一帜的感脚!非常容易让人 ...
- oracle在没
db_user表中数据: name age nub 张三 13 13 张三 12 12 张三 12 13 张三 12 13 李四 12 12 李四 12 12 查询重复数据(一条) sql:selec ...
- 更改导航栏的背景和文字Color
更改导航栏的背景和文字Color方法一: [objc] view plaincopy//set NavigationBar 背景颜色&title 颜色 [self.navigationCon ...
- Oracle 赋予指定用户dba权限
指定用户赋权限 1.链接数据库地址,使用ssh登录 2.sudo -i 3.grant dba to 用户名;
- 05.Linux系统-WCP知识共享平台安装部署(旗舰版)
WCP知识共享平台部署 一.环境准备 操作系统:CentOS Linux release 7.5.1804 (Core) Java:jdk-7u79-linux-x64.tar.gz 中间件:apac ...
- GIT 开发流程
1.git clone 使用 git clone 将一个项目下载到本地 2.git checkout -b branchName 新建一个branchName的本地分支 3.git add file/ ...
- 复试笔试复习 & bd面试总结
计算机网络: 1.OSI模型中提供端到端服务的是传输层 2.波特率的含义是每秒钟信号变化的次数 3.非屏蔽双绞线中5类网线的数据速率为100Mbps,连接器是RJ-45 4.虚电路在数据链路层实现,电 ...
- GUI学习之三十一—QLabel学习总结
前面所有的控件都是归于输入控件的,下面我们要总结下展示控件的用法.首先要将的就是最常用的QLabel. 一.描述 标签控件(QLabel)提供了文本或图像显示的功能,可以用来显示 普通文本 数字 富 ...