node.js — Сбой внешнего URL-вызова: [PHP] [обертка nodejs] [AWS-Lambda]

shell_exec не может получить URL-адрес видео.
Процесс завершается с пустым результатом без каких-либо ошибок.

// main.php

shell_exec($bin_path .' '. __DIR__ . "/ffprobe_hosts.py " . $video_url ." 2>&1");

// index.js

exports.handler = function(event, context, callback)
{

var php = spawn('/var/task/php-7-bin/bin/php',['/var/task/main.php']);
var output = "";

//send the input event json as string via STDIN to php process
php.stdin.write(JSON.stringify(event));

//close the php stream to unblock php process
php.stdin.end();

//dynamically collect php output
php.stdout.on('data', function(data) {
output+=data;
});

//react to potential errors
php.stderr.on('data', function(data) {
console.log("STDERR: "+data);
});

//finalize when php process is done.
php.on('close', function(code) {
context.succeed(JSON.parse(JSON.stringify(output)));
});
}

Как сделать этот URL-адрес синхронным. Думаю, это проблема асинхронного характера.
Когда я попробовал с локальным URL-адресом видео, например: /var/task/video.mp4, это сработало.
Но URL, как это не работает: http://techslides.com/demos/sample-videos/small.mp4.

  1. Как заставить shell_exec работать с внешними URL-адресами из PHP, который находится внутри обертки nodejs моей лямбда-функции?
  2. Как получить & положить файл из S3 ведро URL. Т.е. shell_exec S3 Bucket видео URL, а также распечатать вывод в файл в S3 Bucket?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector