用Python写一个简单的接口开发

用到Python的Flask库,写一个查询接口
连接mysql数据库就不赘述,上篇博客已经写过

1.简单的查询接口,查询所有

一般用post接口,代码如下

import pymysql
import os
import json
from flask import Flask,request
app =Flask(__name__)

@app.route('/index',methods=['POST'])
def getconn():
    conn = pymysql.connect(host="ip没写真实的", user="mnet_business", password="mnet@123", database="testmnet")
    cursor = conn.cursor()
    sql = "select * from serv_user_info "
    cursor.execute(sql)
    data = cursor.fetchall()
    print(data)
    para=[]
    for i in data:
        text={'id':i[0],'mobile':i[1],'password:':i[2],'username':i[3],'state':i[4],'nickname:':i[5],'org_code':i[6],'login_availble:':i[7]}
        para.append(text)
    return json.dumps(para,ensure_ascii=False,indent=4)
if __name__=='__main__':
    app.run(host='0.0.0.0',port=5000)

点击运行
在这里插入图片描述
在postman里验证接口是否通过
地址是:http://127.0.0.1:5000/index
接口类型选择POST
这个接口没有入参,直接Send
在这里插入图片描述
发现查询出这个表里所有的数据,并且是json类型的返回

这时要想进行筛选,就算传入入参,改一下这个接口

2.带有入参的接口查询

上述的数据想用name来查询出 name为zhou的数据
这时候就需要把入参传入进去
增加了一个方法,代码如下

#!/usr/bin/env python 
#-*- coding:utf-8 -*-
import pymysql
import os
import json
from flask import Flask,request
app =Flask(__name__)

@app.route('/index',methods=['POST'])

def indextest():
    name =request.json.get('name')
    data1=getconn(name)
    return data1

def getconn(name):
    conn = pymysql.connect(host="218.17.39.34", user="mnet_business", password="mnet@123", database="testmnet")
    cursor = conn.cursor()
    sql = "select * from serv_user_info where user_name='%s'"%(name)
    cursor.execute(sql)
    data = cursor.fetchall()
    print(data)
    para=[]
    for i in data:
        text={'id':i[0],'mobile':i[1],'password:':i[2],'username':i[3],'state':i[4],'nickname:':i[5],'org_code':i[6],'login_availble:':i[7]}
        para.append(text)
    return json.dumps(para,ensure_ascii=False,indent=4)
if __name__=='__main__':
    app.run(host='0.0.0.0',port=5000)

点击运行
在这里插入图片描述
在postman里验证
输入入参
{
“name”:“zhou”
}
在这里插入图片描述
这时候就查出来了name为zhou的数据

以上是学习用Python写一个接口的记录博客

相关参考:https://blog.csdn.net/weixin_40547993/article/details/89632691

猜你喜欢

转载自blog.csdn.net/shenshenruoxi/article/details/105677336