实现接口,获取服务器上位于docker中的Mysql数据

1. 服务器

from flask import Flask, request, jsonify
import pymysql

app = Flask(__name__)

# 配置数据库连接信息
db_config = {
    'host': '', # mysql容器的IP地址
    'port': 3306, # mysql容器的端口(不是映射到服务器主机的端口!)
    'user': 'root', 
    'password': '123456',
    'database': 'ClickShield', # 数据库名字
}


# 创建数据库连接
def get_db_connection():
    connection = pymysql.connect(
        host=db_config['host'],
        port=db_config['port'],
        user=db_config['user'],
        password=db_config['password'],
        database=db_config['database'],
        cursorclass=pymysql.cursors.DictCursor
    )
    return connection


@app.route('/xxx/<string:infor>', methods=['GET'])  
def get_fingerprint(package_name):
    try:
        connection = get_db_connection()
        if connection is None:
            print("无法连接到数据库")
            return jsonify({"error": "无法连接到数据库"}), 500
        with connection.cursor() as cursor:
            # 查询 appID
            cursor.execute("SELECT * FROM data WHERE xx = %s", (infor,))  ##一定注意!当数据表data中xx是int类型是,要改成SELECT * FROM data WHERE xx = '%s'   单引号!!!
            app = cursor.fetchone()

            if not app:
                return jsonify({"error": "Package name not found"}), 404
            return jsonify({
                "w1": data['word1'],
                "w2": data['word2']
            })

    except Exception as e:
        return jsonify({"error": str(e)}), 500

    finally:
        connection.close()


if __name__ == '__main__':
    app.run(host='服务器IP地址', port=自定义)

2. 本地客户端

import json
import requests

res = requests.get("http://服务器IP地址:自定义的端口/xxx/要携带的infor信息")
print(res.text)
  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值