fix(api): 修复上传图片失败的问题

This commit is contained in:
Ching 2024-09-30 00:08:45 +08:00
parent f83f229622
commit 11307820b4

9
app.py
View File

@ -8,6 +8,7 @@ from flask import Flask, jsonify, request
from pygrocy import EntityType, Grocy from pygrocy import EntityType, Grocy
import atexit import atexit
import base64 import base64
import mimetypes
import loguru import loguru
import redis import redis
import requests import requests
@ -301,10 +302,16 @@ def consume():
def upload_image(url): def upload_image(url):
# download image # download image
url = url.split('?')[0]
image_name = url.split('/')[-1]
img = requests.get(url) img = requests.get(url)
mime_type = mimetypes.guess_type(image_name)[0]
if not mime_type:
mime_type = 'image/jpeg'
# compress image # compress image
compress_url = 'https://upload-tinypng.tunpok.com/upload/' compress_url = 'https://upload-tinypng.tunpok.com/upload/'
resp = requests.post(compress_url, files={'file': img.content}) files = {'file': ('img.jpeg', img.content, mime_type,)}
resp = requests.post(compress_url, files=files, )
if resp.status_code == 200: if resp.status_code == 200:
return resp.json()['cdn_url'] return resp.json()['cdn_url']
return None return None