IE9上传图片 json下载问题

2023-12-04 01:08

本文主要是介绍IE9上传图片 json下载问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这东西,找的烧脑壳呦~

IE9上传图片需要前端后端配合,网上有很多方法,我这个是在github找的,地址放在下面,代码核心上传就是ajaxSubmit

加一句,【json下载】问题我这里只会在上传图片之后,后端返回【application/json】才会被IE9拦截后下载。

以及,看到这篇文章的人,应该已经知道IE9上file对象以及常用的那一堆方法不能用的事情了,我就不赘述了……

github地址:https://violay33.github.io/yyy-upload/

一.下面是根据他的代码做出的一些调整:

1.这两upload是要与调接口时候用的参数保持一致

 2.代码里【验证图片大小】这些都被我注释了,具体原因应该是IE或者IE9不支持某些方法

二.前端和后端需要做出什么调整

1.前端:

        ajaxSubmit里面有一条dataType,前端在IE9下上传时需要选用【html】或者【text】,后端的响应头类型,我让后端设置的是【text/html】,后端代码看第2条

我的前端dataType为 text 和 html 返回值:没什么不同

 ajaxSubmit代码:在yyy-upload.js里面,核心就是这个

tempForm.append('upload',opt.fileEle).ajaxSubmit({url: opts.url,type: "POST",timeout: 3000,dataType:"text",   // 是这里呦~success: function (data) {//将文件放回原位if (typeof opt.succCb !== 'undefined') {opt.succCb(data)}opt.fileEle.appendTo(opt.containerEle);tempForm.remove();},error: function (err) {if (typeof opt.failCb !== 'undefined') {opt.failCb(err)}opt.fileEle.appendTo(opt.containerEle);tempForm.remove();}
});

JQuery版本:

 <!-- jquery --> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script><!-- jquery.form.js --><script src="https://cdn.bootcss.com/jquery.form/4.2.2/jquery.form.min.js"></script>

我的demo代码:和github示例好像一样→_→。。。

<template><div><div class="yyy-upload-box"></div></div>
</template><script>
export default {data () {return {obj: null,  }},methods: {},mounted () {$('.yyy-upload-box').imgUpload({immediatelyUpload: true,url: '/common/api/v1/file/uploadIE',maxSize: 0,imgType: ['gif', 'jpeg', 'jpg', 'png', 'bmp'],allowDrag: true,succCb:(data) => {console.log('前端html',data)}});},
}
</script><style></style>

PS:这里我用的是vue-cli4.x的vue框架,github上面下载的js和css文件我是直接丢public里和jquery一起引入了

2.后端(java):

其实我也看不懂java代码,但核心就是让java把上传图片接口的响应类型改成【text/html】,【text/plain】我就没试过了,但找资料看网上说这个也可以,不过懒得试了→_→。。。有一个能用就行

PS:文章来源找不到了,被我关标签页点x点的爽的时候顺手点掉了_(:з」∠)_,但总之就这一句,想办法让你后端加进去

 

三.杂谈

        这个是我做一个围绕富文本为核心的管理系统整出来的,当时客户问适配到IE9,我寻思,vue刚好能适配到IE9,我就答应了,那时候也没做过IE的适配,没想到,这么多问题。

        诶,千言万语汇成一句话,能不适配IE9以下就别适配,能不适配IE就不适配,作为必将被淘汰的IE(我也不知道是我先被淘汰还是IE先被淘汰_(:з」∠)_),诶……词穷了,IE别怪我,毕竟适配你真的还是蛮难受的……

        最后就是那个【IE9下富文本上传图片】,最后也没整出来,毕竟大概率是需要动富文本源码的事儿,简单试了试不行,就想还是算了吧,没那本事。

          以后要还有谁让我适配IE,我就一拳……捶我脑壳上,然后边适配边哭给他看

         TM怎么会有IE呢,诶我TM真是日了狗了,主要因为我写这篇文章的时候,那边IE和IE9还有一堆bug在等我修,诶woc啊啊啊啊啊啊啊!!!!!

 

 

参考链接:

github地址:https://violay33.github.io/yyy-upload/

 

 

 

这篇关于IE9上传图片 json下载问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/451551

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

Java实现将HTML文件与字符串转换为图片

《Java实现将HTML文件与字符串转换为图片》在Java开发中,我们经常会遇到将HTML内容转换为图片的需求,本文小编就来和大家详细讲讲如何使用FreeSpire.DocforJava库来实现这一功... 目录前言核心实现:html 转图片完整代码场景 1:转换本地 HTML 文件为图片场景 2:转换 H

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

C#下Newtonsoft.Json的具体使用

《C#下Newtonsoft.Json的具体使用》Newtonsoft.Json是一个非常流行的C#JSON序列化和反序列化库,它可以方便地将C#对象转换为JSON格式,或者将JSON数据解析为C#对... 目录安装 Newtonsoft.json基本用法1. 序列化 C# 对象为 JSON2. 反序列化