使用Angularjs上传图像

时间:2016-12-06 13:19:54

标签: angularjs

我有用于图片上传的代码:

$scope.uploadAvatar = function(e) {
    $scope.uploadAvatarError = false;
    $scope.uploadAvatarSuccess = false;
    var f = document.getElementById('uploadAvatar').files[0],
        fd = new FormData();
    if (!f) {
        return
    }

    fd.append('user', $scope.user.user_email);
    fd.append('photo', f);

    $http.post(apiUrl + 'addProfilePicture', fd, {
        transformRequest: angular.identity,
        headers: {'Content-Type': undefined}
    }).then(function(response){
        console.log(response);
    })
}

当我将其发送到服务器时,它返回状态200,但没有上传任何内容。 在Chrome开发工具的网络选项卡中,它说 ContentType application / json而不是multipart / form-data。 我怎么能改变它?

1 个答案:

答案 0 :(得分:0)

您可以使用非常彻底的angular-file-upload module来实现这一目标。 如果可以的话,您甚至可以使用此模块添加预览,这对于头像来说非常有用/很好。