Как преобразовать res из маршрута в json вместо массива из функции обратного вызова?

Я извлекаю кадры из видео с помощью ffmpeg, поскольку его функция обратного вызова возвращает путь к извлеченным кадрам в массиве.

Но ответ не возвращается к успеху ajax. Он отображается только на том же маршруте, возможно, это связано с тем, что отправляемый мной ответ имеет форму массива.

Нужна помощь в этом !!

Код---

app.post('/upload',app.upload.single('video-upl'),function(req,res){

    var video_file = fs.createReadStream(req.file.path); // Storing File path
    var video_String = JSON.stringify(video_file); // Converting Json into String of req.file.path
    var video_res = JSON.parse(video_String); // Parsing req.file.path  

    var valueArray = tosplit(video_res.path);  //Splitting Path in values

    var filenme = req.file.originalname; // Requesting Original File name
    var filnameStringify = JSON.stringify(filenme); //Stringify file original name
    var filnameParse = JSON.parse(filnameStringify); //Parsing file Original name

    var filename = extsplit(filnameParse);  // Spliting File name from path

    var finalpath = './public/class/'+valueArray[2]; // Path to Video for Extracting Images

    var destpath = './public/class/'+filename[0]+'/'; //Destinaton Path to Store Images

    var zipdest = './public/class/'+filename[0]; //Destination of File to be Zip

    var articleid = extsplit(valueArray[2]);  //For ArticleId through Video Name

    try {
    var process = new ffmpeg(finalpath);
    process.then(function (video) {
        // Callback mode
        video.fnExtractFrameToJPG(destpath, {
            frame_rate: 1,
            number: 50,
            keep_pixel_aspect_ratio : true,
            keep_aspect_ratio: true,
            file_name : filename[0]+'_%s'
        }, function (error,files){

            if (!error)
                {   
                    var fileJsonStr = JSON.stringify(files);

                    makeZip(zipdest,'./public/class/'+filename[0]+'.zip');

                    console.info(res);

                    res.send(fileJsonStr);
                }
        });
    }, function (err) {
         console.info('Error: ' + err);
    });
  }

    catch (e) {
    console.info(e.code);
    console.info(e.msg);
}
});

- Код Ajax ---

 $('#send_file').submit(function(e){
        e.preventDefault();

        var video_file = $('#video-upl').val();
        var profilehtml = '';


        $(this).ajaxSubmit
        ({
            data: {videofile : video_file},
            datatype: 'JSON',
            contentType: 'application/json',
            success: function(response){
                for(i=0;i<=response.length;i++)
                    {
                        profilehtml += '<tr>';
                        profilehtml += '<td>'+response[i]+'</td>';
                        profilehtml += '</tr>';
                    }
                    $("#img-bind").html(profilehtml);
            }
   });
});

Что ты имеешь ввиду: It is being displayed on the same route only?

Zolbayar 16.08.2018 07:46

когда я загружаю видео, оно перемещается по маршруту / upload, когда я отправляю ответ, например res.send (filepath), он печатается в index.html / upload вместо index.html

Aditya Vyas 16.08.2018 07:48

Вы не обрабатываете ошибку в API. Если API выдает ошибку, вам также необходимо отправить клиенту.

Rahul Sharma 16.08.2018 08:21

я написал console.info для обработки ошибки, как вы можете видеть ...

Aditya Vyas 16.08.2018 09:37
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
4
28
0

Другие вопросы по теме