angularjs+文件上传 http头content-type字段变化
来源:互联网 发布:九章算法班 编辑:程序博客网 时间:2024/06/04 20:05
注 :
1 文件上传必须采用Content-Type:multipart/form-data; boundary=—-WebKitFormBoundarypHkhXOMllLo8SW36
2 angularjs默认的$http服务是content-type:application/json
附带ajax为application/x-www-form-urlencoded;charset=utf-8
问题:
1 需要自行修改配置$http的content-type头
2 文件+普通text一起会存在后端解析中文乱码问题(multipart/form-data导致)
解:
var date = new FormData(); //存储文件格式流数据 var logFile = document.getElementById('logFile').files[0]; //原生dom获取流图片数据 var backFile = document.getElementById('backFile').files[0]; date.append('file[0]', logFile); date.append('file[1]', backFile); //date.append('pageTitle', $scope.pageTitle); //数据传到后端会乱码 对于此方式传递普通字段 解析的方式是multipart/form-data var parmass = "?" //可以保证数据不会乱码 隔离multipart/form-data + 'id=' + id + "&" + 'pageTitle=' + $scope.pageTitle + "&" + 'shopName=' + $scope.shopName + "&" + 'shopContact=' + $scope.shopContact + "&" + 'shopAddr=' + $scope.shopAddr + "&" + 'shopDesc=' + $scope.shopDesc + "&" + 'pageLogo=' + $scope.pageLogo + "&" + 'pageBackground=' + $scope.pageBackground; $http({ method : 'POST', url : "/portalmgr/portalPage/saveTemplate1" + parmass, //如此添加普通字段数据保证其和流数据不是在同一个域中 data : date, //仅仅存放的是文件流数据 headers : { 'Content-Type' : undefined //angularjs设置文件上传的content-type修改方式 }, transformRequest : angular.identity }).success(function(response) { layer.alert('提交成功', {icon: 6}); });
附录:
// 前端不做修改可以解决乱码问题
//String name1 = new String(request.getParameter(“pageTitle”).getBytes(“iso8859-1”), “utf-8”);
// 前端将参数放在路由后面可以解决中文乱码问题 如上面代码
0 0
- angularjs+文件上传 http头content-type字段变化
- HTTP头Content-Type
- http头 content-type
- 常见文件http中content-type头值(MIME类型)
- 常见文件http中content-type头值(MIME类型)
- 文件格式对应http的Content-Type字段
- 常见文件的http中content-type头的值(MIME类型)
- 常见文件的http中content-type头的值(MIME类型)
- http Content-Type 中的boundary捣乱,导致服务端无法获取上传文件
- Content-Disposition 文件上传、下载 中文乱码 HTTP头 解决办法 Java Jersey
- http中content-type头值-(MIME类型)
- 常用HTTP Content-type头信息及文件类型对照
- HTTP Content-type头信息及文件类型对照
- 常用HTTP Content-type头信息及文件类型对照
- 常用HTTP Content-type头信息及文件类型对照
- http中content-type头值-(MIME类型)
- http中content-type头值-(MIME类型)
- 关于Content-Type的http请求头的格式
- Git 学习看这篇就够了!
- 浏览器加载网页的顺序
- Android问题解决:Caused by: java.lang.UnsupportedOperationException: Can't convert to fraction: type=0x3
- Android 文件下载引擎,稳定、高效、简单易用:FileDownloader(结合okhttp)
- 【BZOJ 3926】[Zjoi2015]诸神眷顾的幻想乡 广义后缀自动机
- angularjs+文件上传 http头content-type字段变化
- cas单点登录与spring boot关联使用
- IIR滤波器设计(java)
- MySQL索引背后的数据结构及算法原理
- Apache Maven Site Plugin概述
- Objective-c - 私有属性和私有方法的应用
- DWZ框架分页控件中遇到的问题
- java maven 入门
- Javascript的this用法