Интеграция Node JS с сервером искровых заданий - PullRequest
0 голосов
/ 08 мая 2018

Я пытаюсь вызвать API сервера искровых заданий с узла js. API, который является файлом яиц Python, обеспечивает подсчет нулей из файла. Поэтому, когда я вызываю API с узла, он достигает сервера SJS и запускается задание, которое вызывает событие res.on ('data'), и вскоре после этого оно вызывает также res.on ('end') перед задание завершает свое выполнение и возвращает результат. Поэтому из-за этого я не могу получить данные после завершения работы.

Ниже приведен фрагмент кода. Пожалуйста, дайте мне знать, в чем здесь ошибка.

        var postData = {
                'input': {
                    'strings': {
                        'file': 'file path to be passed'
                    }
                }
        };

        var options = {
            hostname: 'localhost',
            port: 8090,
            path: '/jobs?appName=my_ml_job&classPath=my_py_package.NullCheck.nullcheck&context=py-context',
            method: 'POST',
            headers: {
                'Content-Type': 'application/json',
                'Content-Length': Buffer.byteLength(JSON.stringify(postData))
            }
        };

        var post_req = Http.request(options, function(res) {
            res.setEncoding('utf8');
            res.on('data', function (chunk) {
                console.log('Response: ' + chunk);
            });

            res.on('end', () => {
                return{
                    'STATUS': 'FINISHED'
                }                   
            });
        });

        post_req.on('error', e => {
            rj(e);
        });

        // post the data
        post_req.write(postData);
        post_req.end();
...