From ea2463971e527adde0f8d77a65d63ce69e157dca Mon Sep 17 00:00:00 2001 From: yangjian Date: Tue, 15 Jun 2021 20:31:58 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dvditor=E7=BC=96=E8=BE=91?= =?UTF-8?q?=E5=99=A8=E7=B2=98=E8=B4=B4=E5=9B=BE=E7=89=87URL=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E5=A4=B1=E8=B4=A5=E7=9A=84=E5=BC=82=E5=B8=B8=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 1 + app_doc/util_upload_img.py | 49 +++++++++++++++++++++++++------------- 2 files changed, 33 insertions(+), 17 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 0bb6d4d..02d1bd8 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -6,6 +6,7 @@ - [新增]后台站点设置文档长代码显示控制选项; - [修复]开启「全站登录」后URL跳转异常的问题; - [修复]Vditor编辑器编写的文档搜索高亮文档不解析的问题; +- [修复]Vditor编辑器粘贴上传图片异常的处理; - [优化]用户禁止同名文集创建,文集下禁止同名文档创建; - [优化]文集导出异常提示; - [优化]Vditor文档目录样式; diff --git a/app_doc/util_upload_img.py b/app_doc/util_upload_img.py index d3d3aae..a0e14e4 100644 --- a/app_doc/util_upload_img.py +++ b/app_doc/util_upload_img.py @@ -7,6 +7,7 @@ from django.utils.translation import gettext_lazy as _ import datetime,time,json,base64,os,uuid from app_doc.models import Image,ImageGroup,Attachment from app_admin.models import SysSetting +from loguru import logger import requests import random @@ -255,24 +256,38 @@ def url_img_upload(url,dir_name,user): header = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36" } - r = requests.get(url, headers=header, stream=True) + try: + r = requests.get(url, headers=header, stream=True) + if r.status_code == 200: + with open(path_file, 'wb') as f: + f.write(r.content) # 保存文件 + Image.objects.create( + user=user, + file_path=file_url, + file_name=file_name, + remark=_('粘贴上传'), + ) - if r.status_code == 200: - with open(path_file, 'wb') as f: - f.write(r.content) # 保存文件 - Image.objects.create( - user=user, - file_path=file_url, - file_name=file_name, - remark=_('粘贴上传'), - ) - resp_data = { - 'msg': '', - 'code': 0, - 'data' : { - 'originalURL': url, - 'url': file_url - } + resp_data = { + 'msg': '', + 'code': 0, + 'data' : { + 'originalURL': url, + 'url': file_url + } + } + else: + resp_data = { + 'msg': '', + 'code': 1, + 'data': {} + } + except Exception as e: + logger.error("上传URL图片异常:{}".format(repr(e))) + resp_data = { + 'msg': '', + 'code': 1, + 'data': {} } return resp_data # return {"success": 1, "url": file_url, 'message': '上传图片成功'} \ No newline at end of file