Как преобразовать строку base 64 image js в image в c#? - PullRequest
0 голосов
/ 20 января 2020

Я хочу передать базовое 64-строчное изображение на сайт сервера, а затем преобразовать в изображение в c#

function readFile(input) {
        CheckFileUpload(input.files.length)
        if (input.files && input.files[0]) {
            var img, inputID = 0;
            for (var i = 0; i < input.files.length; i++) {
                var reader = new FileReader();
                reader.onload = (function (f) {
                    return function (e) {
                        //<input type="file" id="file_' + inputID + '" name="file_' + inputID + '" class="d-none" value="' + f + '" style="display:none" />';
                        var fileInput = $('<input/>')
                            .attr('type', "hidden")
                            .attr('name', 'file_' + inputID + '')
                            .attr('id', 'file_' + inputID + '')
                            .attr('value', e.target.result);
                        $('#imgZone').append(fileInput);
                        inputID++;
                    }

                })(input.files[i]);
                reader.readAsDataURL(input.files[i]);
            }
        }

C# Код

var filesRequest = Request.Form;
        string file = filesRequest["file_1"];
        byte[] bytes = Convert.FromBase64String(file); // Error (1) here 
        System.Drawing.Image image;
        using (MemoryStream ms = new MemoryStream(bytes))
        {
            image = System.Drawing.Image.FromStream(ms);
        }

Ошибка (1): System.FormatException: 'Введенная строка не является допустимой строкой Base-64, так как содержит не базовый 64-символ, более двух символов заполнения или недопустимый символ среди символов заполнения. '

базовая строка 64

...