python学习(二十四)开发接口

Posted 所谓双鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习(二十四)开发接口相关的知识,希望对你有一定的参考价值。

模拟一些接口,在接口没有开发成功前,可以用它来测试

用来查询数据

1、第一个接口

import flask,json
#__name__,代表当前这个python文件
server=flask.Flask(__name__) #把这个python文件,当做一个服务
#ip:8000/index?uge
@server.route(\'/index\',methods=[\'get\',\'post\']) #可以只写一个,那就只支持那一个
def index():
    res={\'msg\':\'这是开发的第一个接口\',\'msg_code\':0}
    return json.dumps(res,ensure_ascii=False)
server.run(port=5555,debug=True)  #debug=True,改了代码之后,不用重启,会自动重启

执行该程序后,打开本地127.0.0.1:5555/index  ,界面会显示:\'msg\':\'这是开发的第一个接口\',\'msg_code\':0

2、注册接口

通过用户名密码进行注册,如果用户在数据库已存在,则返回已存在提示,否则写入数据库并返回注册成功

在执行该段代码时,必须先有个数据库操作的函数,在之前也写过,具体如下:

def my_db(sql):
    import pymysql
    coon = pymysql.connect(
        host=\'xxxx\', user=\'jxz\', passwd=\'123456\',
        port=3306, db=\'jxz\', 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

在下面这段代码中会调用数据库操作的函数

import flask,json
server=flask.Flask(__name__) 
@server.route(\'/reg\',methods=[\'post\'])
def reg():
    username=flask.request.values.get(\'username\')
    pwd =flask.request.values.get(\'passwd\')
    if username and pwd:
        sql=\'select * from my_user where username="%s";\'%username
        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}
    return json.dumps(res,ensure_ascii=False)

server.run(port=5555,debug=True,host=\'0.0.0.0\')
#加host=\'0.0.0.0\',表示其他人用你的ip就可以访问了

执行该程序,打开postman,URL输入127.0.0.1:5555/reg,选择post方式,直接点击send,或用户名密码没有写全,则会返回:\'msg\':\'必填字段未填,请查看接口文档\',\'msg_code\':1001

 

如果在body中写了用户名和密码的值,且用户在数据库表中不存在,点击send,则会返回:\'msg\':\'注册成功\',\'msg_code\':0,且数据库中会写入

 

如果在body中写了用户名和密码的值,且用户在数据库表中存在,点击send,则会返回:\'msg\':\'用户已存在\',\'msg_code\':2001

 3、

 

以上是关于python学习(二十四)开发接口的主要内容,如果未能解决你的问题,请参考以下文章

Python3.5 学习二十四

python接口自动化测试二十四:上传多个附件,参数化

QT开发(二十四)——QT文件操作

Python学习笔记(二十四)StringIO和BytesIO

Python学习笔记第二十四五周(Django补充)

Python之路第二十四篇:Python学习路径及练手项目合集