接口开发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支付宝接口开发 支付接口一般是第三方提供的代收款.付款的平台,可以通过支付接口帮助企业或个人利用一切可以使用的支付方式.常见支付平台:支付宝.快钱.云网支付.财 ...
随机推荐
- Lock和synchronized的区别和使用(转发)
今天看了并发实践这本书的ReentantLock这章,感觉对ReentantLock还是不够熟悉,有许多疑问,所有在网上找了很多文章看了一下,总体说的不够详细,重点和焦点问题没有谈到,但这篇文章相当不 ...
- Nginx 编译安装工程优化
1.减小 nginx 编译后的文件大小 在编译 nginx 时,默认以 debug 模式进行,在 debug 模式下会插入很多跟踪和 assert 之类的信息. 在 nginx 源码文件解压后,找到源 ...
- Nginx 详细介绍
Nginx 和 Apache 一样是 http 服务器软件.它们的区别是 Apache 的处理速度慢,占用内存资源, nginx 恰恰相反.在功能上 Apache 的所有模块都支持动和静态编译,而 n ...
- php内置函数分析array_count_values()
PHP_FUNCTION(array_count_values) { zval *input, /* Input array */ *entry, /* An entry in the input a ...
- SSM常用配置文件头模板
web.xml文件头 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=&q ...
- Java 8 Date常用工具类
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11983108.html Demo package org.fool.util; import java ...
- 【SaltStack官方版】—— states教程, part 4 - states 说明
STATES TUTORIAL, PART 4 本教程建立在第1部分.第2部分.第3部分涵盖的主题上.建议您从此开始.这章教程我们将讨论更多 sls 文件的扩展模板和配置技巧. This part o ...
- docker for windows 中挂载文件到容器
docker for windows版本: 宿主机:windows10 场景: 容器是基于microsoft/donet的webapi 想把宿主机的文件挂载到容器中,比方说:a.txt 命令如下: d ...
- sublime格式化
https://nodejs.org/dist/v6.2.0/node-v6.2.0-x64.msi sublime格式化
- LUOGU P2569 [SCOI2010]股票交易(单调队列优化dp)
传送门 解题思路 不难想一个\(O(n^3)\)的\(dp\),设\(f_{i,j}\)表示第\(i\)天,手上有\(j\)股的最大收益,因为这个\(dp\)具有单调性,所以\(f_i\)可以贪心的直 ...