from flask import Flask, request, jsonify import uuid from change_detect import start import requests from PIL import Image from io import BytesIO app = Flask(__name__) # GET 请求接口示例 @app.route('/api/get_data', methods=['GET']) def get_data(): # 获取请求参数 param = request.args.get('param', default='default_value') # 返回 JSON 响应 return jsonify({ "message": "GET 请求成功", "param": param }) # POST 上传图片 @app.route('/api/upload_image', methods=['POST']) def upload_image(): # 获取上传的文件 img1 = request.files['img1'] img2 = request.files['img2'] # 保存文件 filePath1 = 'predict/' + str(uuid.uuid4()) + img1.filename filePath2 = 'predict/' + str(uuid.uuid4()) + img2.filename img1.save(filePath1) img2.save(filePath2) return jsonify({ "message": "上传成功", "data":{ "img1": filePath1, "img2": filePath2 } }) # POST 通过url保存图片到本地 @app.route('/api/save_image', methods=['POST']) def save_image(): # 获取图片路径 # data = request.get_json() # img1 = data['img1'] # img2 = data['img2'] param = request.args.get('param', default='default_value') img1 = request.args.get('img1', default='default_value') img2 = request.args.get('img2', default='default_value') response1 = requests.get('http://192.168.60.63'+img1) if response1.status_code != 200: return jsonify({ "message": "图片1不存在", "data":{ "img1": img1 } }) img1 = Image.open(BytesIO(response1.content)) response2 = requests.get('http://192.168.60.63'+img2) if response2.status_code != 200: return jsonify({ "message": "图片2不存在", "data":{ "img2": img2 } }) img2 = Image.open(BytesIO(response2.content)) getImgPath=start(img1,img2) return jsonify({ "message": "保存成功", "data":{ "imgRes":getImgPath } }) # # POST 分析图片 # @app.route('/api/detect_image', methods=['POST']) # def detect_image(): # # 获取图片路径 # data = request.get_json() # img1 = data['img1'] # img2 = data['img2'] # getImgPath=start(img1,img2) # return jsonify({ # "message": "分析成功", # "data":{ # "img": getImgPath # } # }) if __name__ == '__main__': app.run(debug=True,port=4100)