Python之mock接口开发

  • mock接口开发需要使用flask模块,安装flask模块 pip install flask
import flask
import json

server=flask.Flask(__name__) #__name__是指把当前python文件当作一个服务

@server.route(‘/api/login‘,methods=[‘post‘,‘get‘]) #默认不传methods是get请求
def login():
    username=flask.request.values.get(‘username‘) #从请求里面获取到参数,key:value形式

    # flask.request.is_json #判断请求是否为json
    # flask.request.json.get(‘‘)  #如果入参是json的话,用这个获取请求的参数,
    d = {‘error_code‘:0,‘msg‘:‘登录成功‘,‘登陆名‘:username}
    return json.dumps(d,ensure_ascii=False)

# 访问的时候是这样的:http://127.0.0.1:8000/api/login?username=haha

@server.route(‘/api/pay‘)
def pay():
    d = {‘error_code‘:0,‘msg‘:‘支付成功‘}
    return json.dumps(d,ensure_ascii=False)

#自己用的时候访问127.0.0.1,表示本机
server.run(port=8000,debug=True) #启动服务,只能写一次run,放到最下面。加debug=True更新代码后服务会自动重启。

#别人访问
#在同一个局域网,想让别人访问,mac系统加一个host=‘0‘,window加host=‘0.0.0.0‘,这时别人用我的IP就可以访问了
# server.run(host=‘0‘,port=8000,debug=True)
  • 写一个获取数据的方法
import flask
import json

@server.route(‘/api/get_bill‘)
def get_bill():
    table_list=[‘app_myuser‘,‘czm‘] #数据库表
    table_name=flask.request.values.get(‘table_name‘)
    limit=flask.request.values.get(‘limit‘,20) #不传默认返回10条
    if table_name and table_name in table_list:
        sql = ‘select * from %s limit %s‘ %(table_name,limit)
        result=tools.op_mysql(sql)
        data={‘error_code‘:0,‘msg‘:‘成功‘,‘data‘:result}
    else:
        data={‘error_code‘:-1,‘msg‘:‘没有权限查询该表‘}
    return json.dumps(data,ensure_ascii=False)

server.run(port=8000,debug=True) #启动服务

#访问:http://127.0.0.1:8000/api/get_bill?table_name=app_myuser

原文地址:https://www.cnblogs.com/tata-learning/p/11795656.html

时间: 2024-08-01 08:29:44

Python之mock接口开发的相关文章

python进阶-mock接口

setting.py MYSQL_HOST='192.168.127.139' PASSWORD='123456' PORT=3306 USER='root' DB='stu' tools.py import pymysql,redis from conf import setting def op_mysql(sql): conn=pymysql.connect(host=setting.MYSQL_HOST,user=setting.USER, passwd=setting.PASSWORD

python中模拟接口开发

# 模拟没有开发好的接口# pip install flaskimport flaskimport json server = flask.Flask(__name__) @server.route('/login') # 浏览器访问的名称def welcome(): data = {'code': 0, 'msg': '登录 成功', 'session_id': '123456'} return json.dumps(data, ensure_ascii=False) @server.rout

mock挡板接口开发

import flaskimport json#mock接口开发 挡板#1.模拟第三方接口#2. 给别人提供数据#3.flask是一个web开发框架server = flask.Flask(__name__) @server.route('/api/login')#URL中的ip地址后面的内容/api/logindef login(): d = {'error_code':1,'msg':'登录成功'} return json.dumps(d,ensure_ascii=False)#ensure

测试开发系列之Python开发mock接口(一)

本次测试开发系列给大家分享一下怎么用python开发mock接口.本次介绍下什么是mock接口,以及咱们开发之前需要做的准备. 什么是mock接口呢,举个栗子,你在一家电商公司,有查看商品.购物.支付.发货.收获等等等一大堆功能,你是一个测试人员,测测测,测到支付功能的时候,你就要调用第三方支付接口了,真实支付,直接扣你支付宝/微信/银行卡里面的钱了,这下大事不好,测个试还得把自己钱搭进去(当然一般公司都会报销测试的支付费用,但是走报销麻烦),还有一些大额支付的的,可能你账户里面根本就没那么钱,

测试开发系列之Python开发mock接口(二)

上一篇咱们已经把开发前的环境准备好了,还需要再做一点准备,你的账户信息是存在哪的呢,当然是存在数据库里的,咱们在去支付,扣钱的时候,肯定是从数据库里面操作的,去更新账户表里面的数据,所以咱们先要把数据库准备好,建好账户表,初始化几条账户信息,这样才能完整的把这个mock接口给完成. 这篇咱们就学习一下python怎么操作数据库,怎么执行sql,数据库使用sqlite,sqlite是一个跨平台开源的轻量级关系型数据库,不需要配置和安装直接就可以使用,sql语句和mysql.sqlserver.or

python基础学习6-mongodb、sys、接口开发、操作excel

1       mysql补充 cur = conn.cursor(cursor=pymysql.cursors.DictCursor)    #直接获取的数据转换为字典格式的 cur.description                   #直接获取的描述信息 fileds = [filed[0] for filed in cur.description]        #列表生成式,获取到第一行所有的字段 import pymysql,xlwtconn = pymysql.connect

测开6 - Python(网络编程、接口开发)

python课的开头我已经反复听了好几遍了,始终没有接触到网络编程和接口开发这部分.再加上上周的课因为公司出游耽误了,内心其实还是很忐忑的,很担心跟不上进度或者跟的吃力,之后就没有什么动力和正向反馈支撑我继续学习了.一整天的课听下来觉得好像也没有想象中那么难,主要还是零散的知识点,容易出现眼睛会了脑子不会的情况辣!??????  1?? 网络编程 主要是发送请求??拿到结果??对结果进行处理.用到的是 request 模块,以下通过请求的不同类型来分别总结. a. get 请求 1 url =

python的flex服务端数据接口开发

python的flex服务端数据接口开发 python 如果给flex提供服务端,需要提供一个网关和一个可供客户端(flex)调用的类.这方面我更加推荐用twisted来写这个网关,因为twisted有很好的异步机制. 下面的我写的一个简单的验证用户的python服务端: ______________________________DBServer.py # Copyright (c) 2009-2010 The Newjh Project."""@author: Roy@s

python编程:excel文件操作,redis数据库,接口开发

1.操作mysql import pymysql # 1.连上数据库 账号.密码 ip 端口号 数据库 #2.建立游标 #3.执行sql #4 .获取结果 # 5.关闭游标 #6.连接关闭 coon = pymysql.connect( host='数据库ip',user='jxz',passwd='123456', port=3306,db='jxz',charset='utf8' #port必须写int类型, #charset这里必须写utf8 ) cur = coon.cursor() #