标签:直接 methods %s false etc 数据库 select upper admin
1、mock接口,模拟一些接口,在别的接口没有开发好的时候,你需要用它 假的支付接口,模拟支付成功
2、
3、查看数据,避免直接操作数据库flask web开发框架
实例化server
装饰器,下面的函数变为一个接口
import flask,json #__name__代表当前这个python文件 server = flask.Flask(__name__)#实例化server,把当前这个python文件,当做一个服务 def my_db(sql): import pymysql conn = pymysql.connect( host=‘127.0.0.1‘, user=‘root‘, passwd=‘123456‘, port=3306, db=‘data‘, charset=‘utf8‘) cur = conn.cursor() #建立游标 cur.execute(sql)#执行sql if sql.strip()[:6].upper()==‘SELECT‘: res = cur.fetchall() else: conn.commit() res = ‘ok‘ cur.close() conn.close() return res @server.route(‘/index‘,methods=[‘get‘])#装饰器,下面的函数变为一个接口 #method默认只有get,methods=[‘get‘,‘post‘] def index(): res = {‘msg‘:‘这是我开发的第一个接口‘,‘msg_code‘:0} # 返回状态码0,表示返回成功 return json.dumps(res,ensure_ascii=False) #json.dumps 序列化时对中文默认使用的ascii编码.想输出真正的中文需要指定ensure_ascii=False @server.route(‘/reg‘,methods=[‘post‘])#/reg接口路径 def ref(): username = flask.request.values.get(‘username‘)#username是接口调用的key,即入参 pwd = flask.request.values.get(‘passwd‘)#passwd是接口调用的key,即入参 if username and pwd: sql = ‘select * from my_user where username = "%s";‘ % username if my_db(sql): res = {‘msg‘: ‘用户已存在‘, ‘msg_code‘: 2001} # 2001,以2开头都是跟用户有关的 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=7788,debug=True)
标签:直接 methods %s false etc 数据库 select upper admin
原文地址:https://www.cnblogs.com/dongrui624/p/9022656.html