前言
使用带参数的post请求,判断数据库中是否存在此账号,如存在,返回“用户已存在”的响应数据,不存在,返回“注册成功”的响应数据,并把此账号添加到数据库中,未填写传入参数,返回“必填字段未填,请查看接口文档”的响应数据
一、安装
- cmd进入DOS界面,执行以下命令
导入Flask模块,编写接口
pip install Flask
导入PyMySQL模块,连接数据库
pip install PyMySQL
二、编写接口
- 准备两个.py文件,文件必须在同一个文件夹下
setting.py :数据库配置
interface.py:接口
setting文件写数据库配置
import pymysql
def connect():
db = pymysql.connect(
host='192.168.100.110',
port=3306,
user='root',
passwd='123456',
db='库名',
charset='utf8'
)
return db
interface文件写接口
import flask
import json
from setting import connect # 调用setting文件里的connect函数
server = flask.Flask(__name__)
@server.route('/index', methods=['post'])
def reg():
username = flask.request.values.get('username')
passwd = flask.request.values.get('passwd')
if username and passwd:
db = connect()
cursor = db.cursor()
try:
sql = "SELECT * FROM `user` WHERE username = '%s'" % username
cursor.execute(sql)
result = cursor.fetchone()
ang = result[1]
cursor.close() # 关闭数据库游标
db.close() # 关闭数据库
except Exception:
sql1 = "INSERT INTO `user`(`username`, `password`) VALUES ('%s', '%s')" % (username, passwd)
cursor.execute(sql1)
db.commit() # COMMIT命令用于把事务所做的修改保存到数据库
cursor.close()
db.close()
res = {"Code": 200, "Msg": "success", "Data": '注册成功'}
else:
if username == ang:
res = {"Code": -1, "Msg": "用户已存在", "Data": '0'}
else:
res = {"Code": -1, "Msg": "必填字段未填,请查看接口文档", "Data": '0'}
return json.dumps(res, ensure_ascii=False)
server.run(port=8999, debug=True, host='0.0.0.0')
先运行,然后用JMeter调用该接口,如下
响应结果:
数据库中查看数据: