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

相关文章

mybatis和mybatis-plus设置值为null不起作用问题及解决

《mybatis和mybatis-plus设置值为null不起作用问题及解决》Mybatis-Plus的FieldStrategy主要用于控制新增、更新和查询时对空值的处理策略,通过配置不同的策略类型... 目录MyBATis-plusFieldStrategy作用FieldStrategy类型每种策略的作

linux下多个硬盘划分到同一挂载点问题

《linux下多个硬盘划分到同一挂载点问题》在Linux系统中,将多个硬盘划分到同一挂载点需要通过逻辑卷管理(LVM)来实现,首先,需要将物理存储设备(如硬盘分区)创建为物理卷,然后,将这些物理卷组成... 目录linux下多个硬盘划分到同一挂载点需要明确的几个概念硬盘插上默认的是非lvm总结Linux下多

Python Jupyter Notebook导包报错问题及解决

《PythonJupyterNotebook导包报错问题及解决》在conda环境中安装包后,JupyterNotebook导入时出现ImportError,可能是由于包版本不对应或版本太高,解决方... 目录问题解决方法重新安装Jupyter NoteBook 更改Kernel总结问题在conda上安装了

pip install jupyterlab失败的原因问题及探索

《pipinstalljupyterlab失败的原因问题及探索》在学习Yolo模型时,尝试安装JupyterLab但遇到错误,错误提示缺少Rust和Cargo编译环境,因为pywinpty包需要它... 目录背景问题解决方案总结背景最近在学习Yolo模型,然后其中要下载jupyter(有点LSVmu像一个

解决jupyterLab打开后出现Config option `template_path`not recognized by `ExporterCollapsibleHeadings`问题

《解决jupyterLab打开后出现Configoption`template_path`notrecognizedby`ExporterCollapsibleHeadings`问题》在Ju... 目录jupyterLab打开后出现“templandroidate_path”相关问题这是 tensorflo

如何解决Pycharm编辑内容时有光标的问题

《如何解决Pycharm编辑内容时有光标的问题》文章介绍了如何在PyCharm中配置VimEmulator插件,包括检查插件是否已安装、下载插件以及安装IdeaVim插件的步骤... 目录Pycharm编辑内容时有光标1.如果Vim Emulator前面有对勾2.www.chinasem.cn如果tools工

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

Java多线程父线程向子线程传值问题及解决

《Java多线程父线程向子线程传值问题及解决》文章总结了5种解决父子之间数据传递困扰的解决方案,包括ThreadLocal+TaskDecorator、UserUtils、CustomTaskDeco... 目录1 背景2 ThreadLocal+TaskDecorator3 RequestContextH

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明

关于最长递增子序列问题概述

《关于最长递增子序列问题概述》本文详细介绍了最长递增子序列问题的定义及两种优化解法:贪心+二分查找和动态规划+状态压缩,贪心+二分查找时间复杂度为O(nlogn),通过维护一个有序的“尾巴”数组来高效... 一、最长递增子序列问题概述1. 问题定义给定一个整数序列,例如 nums = [10, 9, 2