서문: 오랫동안 블로그 업데이트를 하지 않았습니다. 최근 회사의 PC측 기술 선택이 Angular를 사용하고 있어서 서둘러 올렸습니다. 그래서 저는 과감히 Angular를 직접 사용하기 시작했습니다. 차례로 밟을 수있는 작은 구덩이가 많이 있습니다. 오늘 저는 이미지 업로드라는 비교적 일반적인 문제에 직면했습니다.
테마: 이미지가 서버에 업로드된 후 서버를 통해 Alibaba Cloud로 전송됩니다.
더 이상 헛소리는 하지 마세요. 프런트엔드 코드만 게시하세요.
$http({ method: ‘POST‘, url: ‘/wechatapp/User/setAvatar‘, data: data, headers: { ‘Content-Type‘: undefined }, transformRequest: function(data) { var formData = new FormData(); formData.append(‘avatar_data‘, data.adata); formData.append(‘avatar_file‘, data.file); return formData; }, data: { adata: scope.avatar_data, file: scope.avatar_file } }).success(function(d) { //请求成功 cb(d); }).error(function(err, status) { console.log(err); cb(err); });
사실 별 어려움은 없습니다. 게시물의 기본 Content-Type을 취소한 후 FormData 형식으로 업로드하면 됩니다. 일반적으로 Ajax 업로드 파일은 FormData 모드로 업로드됩니다.
위 내용은 Angular Js 파일 업로드를 위한 form-data를 소개하는 글입니다.