Как преобразовывать изображение base64 в File?

Я произвожу canvas внутри моего приложения, потом мне хотелось бы пересылать то, что верит в этот canvas как изображение png в мой сервер. Проблема, которая у меня есть, состоит в том, что он зазнается, с весом очевидно, но изображение не видно.

canvas остается в основании 64

var img_b64 = fotoFirmaService.getImagenFirma(); //base64 de la imagen
var png = img_b64.split(',')[1];
var the_file = new Blob([window.atob(png)], { type: 'image/png', encoding: 'utf-8' });
var imagen_firma = new File([the_file], 'imagen_firma.png', { type: 'image/png' });

Напечатав стоимость imagen_firma я получаю:

File {
    lastModified : 1489088454413
    lastModifiedDate : Thu Mar 09 2017 16:40:54 GMT-0300 (CLT)
    name : "imagen_firma.png"
    size : 16926
    type : "image/png"
    webkitRelativePath : ""
}

Однако, изображение на моем сервере остается пустым. Я делаю ту же процедуру с неударом в лунку тип file, но они зазнаются правильно. Я напечатал структуру этих файлов и звука идентичный этому File, но в этом случае оно не функционирует.

EDIT

Именно с этим кодом я пересылаю файл в мой сервер:

var payload = new FormData();
payload.append('file', imagen_firma);

$http({
    method: 'POST',
    url: 'dsaasas/UploadImage/' + imagen_firma.name,
    data: payload,
    headers: { 'Content-Type': undefined },
    transformRequest: angular.identity
}).then(function successCallback(response) {
    // this callback will be called asynchronously
    // when the response is available
    console.log("bien");
    console.log(response);
}, function errorCallback(response) {
    console.log(response);
    // called asynchronously if an error occurs
    // or server returns response with an error status.
});

И это мой код C#, - с WCF

public string UploadImage(string fileName)
    {
        try
        {
            HttpPostedFile file = HttpContext.Current.Request.Files[0];
            if (file == null)
                return null;
            string targetFilePath = WebConfigurationManager.AppSettings["FilePath"] + fileName;
            file.SaveAs(targetFilePath);
            return "succ   " + file.FileName.ToString();

            //return fileName;
        }
        catch (Exception ex)
        {
            return ex.Message + " - " + ex.InnerException;

        }
    }
13
задан 16.03.2017, 14:57
0 ответов