前端
| <template> |
| <div> |
| <tr> |
| <td>又拍云上传:</td> |
| <td> |
| <div id="upload"> |
| 拖拽上传 |
| |
| </div> |
| <input type="file" @change="upload_upyun"> |
| </td> |
| </tr> |
| </div> |
| </template> |
| |
| <script> |
| |
| export default{ |
| |
| data(){ |
| |
| return{ |
| |
| } |
| }, |
| //监听属性 |
| watch:{ |
| }, |
| //计算属性 |
| computed:{ |
| }, |
| mounted :function() { |
| let upload = document.querySelector('#upload'); |
| upload.addEventListener('dragenter', this.onDrag, false); |
| upload.addEventListener('dragover', this.onDrag, false); |
| upload.addEventListener('drop', this.onDrop, false); |
| }, |
| //自定义方法 |
| methods:{ |
| onDrag(e){ |
| e.stopPropagation(); |
| e.preventDefault(); |
| }, |
| onDrop(e){ |
| e.stopPropagation(); |
| e.preventDefault(); |
| // 判断是否有文件 |
| this.upload_upyun(e.dataTransfer.files) |
| }, |
| upload_upyun:function(files){ |
| // 获取参数 |
| let file = files[0]; |
| let param = new FormData(); |
| //声明参数 |
| param.append('file',file) |
| //指定类型 |
| const config = { |
| headers: {'Content-Type': 'multipart/form-data'} |
| } |
| // 这里是声明一下this 有时候在axios里获取不到this属性 |
| var a = this |
| // 上传图片 |
| a.axios.post('http://localhost:8000/youpai/',param,config).then(function(response){ |
| console.log(response) |
| }) |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| </script> |
| |
| <style> |
| |
| |
| #upload { |
| margin: 100px auto; |
| width: 300px; |
| height: 150px; |
| border: 2px dashed #f00; |
| padding-top: 50px; |
| padding-left: 80px; |
| } |
| |
| </style> |
后端
| |
| class YouPai(View): |
| def post(self,request): |
| |
| img = request.FILES.get('file') |
| |
| filename = make_password(img.name) + str((int(round(time.time() * 1000)))) + ".jpg" |
| |
| up = upyun.UpYun('md233',username='wangrui',password='7Ly7NfX30PQ63GyPFIlSIHiQ2QRWQz76') |
| headers = { 'x-gmkerl-quality': '50' } |
| |
| for chunk in img.chunks(): |
| res = up.put('/%s'%filename,chunk,checksum=True,headers=headers) |
| return JsonResponse({'filename':filename}) |
| |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)