Как Вы инициировали функции JavaScript от флэш-памяти?

Вам просто нужно установить событие в s3 bucket - put object - для запуска лямбда-функции (вы получите доступ к описанию объекта, загруженного в этот s3-сегмент через первый параметр лямбда-функции). [118 ]

Если вы можете преобразовать видеофайл в аудио на вашем локальном компьютере, используя некоторые внешние библиотеки, то вам нужно создать zip-файл, содержащий вашу лямбда-функцию (в корне zip-файла), а также зависимости.

Это довольно просто в случае с Node. Создайте новую папку, запустите npm init, установите необходимые модули, создайте файл index.js, куда вы поместите свой код Node. Zip все содержимое этой папки (не сама папка). Когда вы создаете новую лямбда-функцию, выберите загрузку этого zip-файла.

Если вам интересно, как программно взаимодействовать с ресурсами AWS и манипулировать ими, отметьте aws-sdk, который вы можете импортировать как модуль, и использовать его для этой цели.

Так что в основном вам нужно внутри вашей лямбда-функции проанализировать аргумент event (первый параметр) для получения корзины и ключа загруженного объекта. Затем вы вызовете метод s3.getObject для получения данных. Обработайте данные с вашей собственной логикой. Вызовите s3.putObject, чтобы сохранить вновь преобразованные данные в новом местоположении S3.

Lambda имеет доступ к собственной локальной файловой системе, если ваш код должен хранить там некоторые данные. Вам просто нужно указать абсолютный путь к файлу, например /tmp/output.mp3. Чтобы получить его, вы можете использовать модуль fs. Затем вы можете продолжить с s3.putObject.

9
задан Jiaaro 6 October 2008 в 12:08
поделиться

2 ответа

Смотрите на ExternalInterface-класс.
Из ссылки AS3-языка:

Классом ExternalInterface является Внешний API, интерфейс прикладного программирования, который включает простую коммуникацию между ActionScript и контейнером Flash player – например, страница HTML с JavaScript. Adobe рекомендует использовать ExternalInterface для всей коммуникации JavaScript-ActionScript.

И это - работа как это:

ExternalInterface.addCallback("sendToActionScript", receivedFromJavaScript);
ExternalInterface.call("sendToJavaScript", input.text);

Можно ли отправить параметры и получить ли обратные вызовы... довольно прохладные, правильно?;)

Поскольку я знаю, что это будет также работать над AS2...

13
ответ дан 4 December 2019 в 12:22
поделиться

Поскольку Jochen сказал, что ExternalInterface является способом пойти, и я могу подтвердить, что он работает с AS2.

Если Вы планируете инициировать навигацию или что-нибудь, что влияет на область, где флэш-память находится, не делают этого непосредственно от функции, которую Вы вызываете от флэш-памяти. Flash ожидает возвращаемое значение от функции, которую он вызывает и если объект флэш-памяти не будет существовать, когда функция будет завершена, флеш-плагин откажет.

Если необходимо сделать навигацию или изменить содержание, можно добавить вызов метода setTimeout (в функцию js). Это создаст новый поток и даст флэш-памяти возвращаемое значение, которое она ожидает.

4
ответ дан 4 December 2019 в 12:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: