Python学习笔记十五_开发接口

1、mock接口,模拟一些接口,在别的接口没有开发好的时候,你需要用它 假的支付接口,模拟支付成功

2、

3、查看数据,避免直接操作数据库flask web开发框架

  1. 实例化server
  2. 装饰器,下面的函数变为一个接口
  3. 启动服务
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)

猜你喜欢

转载自www.cnblogs.com/dongrui624/p/9022656.html