6.3 前端代码6.3.1 服务层 (1)在 pinyougou-shop-web 工程创建 uploadService.js

//文件上传服务层app.service("uploadService",function($http){
 
this.uploadFile=function(){
 
 
var  formData=new  FormData(); formData.append("file",file.files[0]); return  $http({
method:'POST', url:"../upload.do", data:  formData,
headers:  {'Content-Type':undefined}, transformRequest:  angular.identity
});
 
 
}
 
 
});
anjularjs 对于 post 和 get 请求默认的 Content-Type header 是 application/json。通过设置
‘Content-Type’: undefined,这样浏览器会帮我们把 Content-Type  设置为   multipart/form-data.

通过设置 transformRequest: angular.identity ,anjularjs transformRequest function 将序列化我们的 formdata object.

(2)将 uploadService 服务注入到 goodsController 中

//商品控制层(商家后台)

app.controller('goodsController' ,function($scope,$controller ,goodsService,itemCa tService,uploadService){ (3)在 goods_edit.html 引入 js

<script  type="text/javascript"  src="../js/base.js">    </script>
 
 
<script  type="text/javascript"  src="../js/service/goodsService.js">    </script>
 
 
<script  type="text/javascript"  src="../js/service/itemCatService.js">    </script>
 
 
<script  type="text/javascript"  src="../js/service/uploadService.js">    </script>
 
 
<script  type="text/javascript"  src="../js/controller/baseController.js">    </script>
 
<script  type="text/javascript"  src="../js/controller/goodsController.js">    </script>