上传文件在IE中乱码问题

一、问题

上传文件数据是后台返回过来的,只要是关于汉字的,在IE上都出现乱码问题,具体为:出现黑色小菱形,中间带有问号。
页面上一个黑色小菱形,显示一个口,一堆 口口口

二、过程

刚开始,以为是jQuery的锅,因为页面才去的是ajax,外加一些设置。
后来和后台联调发现,其实是IE的锅,编码有问题。
只要是IE上传文件,后台接收的参数都是乱码。
因为后台需要传几个参数,来确定文件名,有些参数是汉字,而非阿拉伯数字或者英文。

三、解决

判断浏览器,如果是IE,把传给后台的参数进行编码,后台再进行相对应的解码
	let browser = that.myBrowser()
	if (browser == 'IE') {
		enterpriseName = encodeURI(enterpriseName ) // enterpriseName :主体名
		processName = encodeURI(processName) // processName:流程名
	}
	// 编码后,再传给后台
	$.ajax({
		url: '***?processName=' + processName + '&enterpriseName=' + enterpriseName
	})

上传文件传给后台数据的CODE

猜你喜欢

转载自blog.csdn.net/yan263364/article/details/85068151