Jersey RESTful WebServiceフレームワーク学習(7)ファイルアップロード
もっと読む
jarバッグを紹介します。ジェームズ-media-multipart-2.2.jar
フロントエンド:
jarバッグを紹介します。ジェームズ-media-multipart-2.2.jar
フロントエンド:
angular.module("uploadApp", []).controller("uploadCtrl",
function($scope, $http) {
$scope.commonFileChanged = function() {
var $$fd = new FormData();
var _file = document.getElementById("commonFile");
$$fd.append('file', _file.files[0]);
$http({
method : 'post',
data : $$fd,
// uri
url : "/Jersey/api/1.0/my/upload",
headers : {
'Content-Type' : undefined
},
/* formdata object*/
transformRequest : angular.identity
}).success(function(data) {
alert(angular.toJson(data));
});
};
});
angular.bootstrap(document, [ 'uploadApp' ]);
バックエンド:@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Path("/upload")
@Produces({ MediaType.APPLICATION_JSON + ";charset=UTF-8" })
public String upload(@FormDataParam("file") InputStream fileInputStream,@FormDataParam("file") FormDataContentDisposition disposition) {
String nFileName = disposition.getFileName();
File file = new File("D:\\file\\" + nFileName);
try {
// common io
FileUtils.copyInputStreamToFile(fileInputStream, file);
} catch (IOException ex) {
ex.printStackTrace();
}
return "{\"success\",\"true\"}";
}