Среда разработки выглядит следующим образом:
Я не разрабатывал этот код, а разработчик, который использовал этокод функции был пользователем macOS. Конечно, я могу запустить файл как py filename.py
локально. -Принимая значение не в event
-
Чтобы использовать параметр event
, который составляет лямбда-AWS, пакет, который был найден только потому, что его было недостаточно для локального запуска файлов python, был [python-lambda-local] (https://pypi.org/project/python-lambda-local/) is. Я использовал файл event.json
и набрал команду в консоли, как сказано в пакете.
python-lambda-local -l ./ -f handler -t 5 filename.py event.json
Ожидаемые результаты вруководство показано ниже.
[root - INFO - 2018-11-20 17:10:53,352] Event: {'answer': 42}
[root - INFO - 2018-11-20 17:10:53,352] START RequestId: 3c8e6db4-886a-43da-a1c7-5e6f715de531
(...)
[root - INFO - 2018-11-20 17:10:53,359] END RequestId: 3c8e6db4-886a-43da-a1c7-5e6f715de531
[root - INFO - 2018-11-20 17:10:53,360] REPORT RequestId: 3c8e6db4-886a-43da-a1c7-5e6f715de531 Duration: 2.17 ms
[root - INFO - 2018-11-20 17:10:53,360] RESULT:
Вопреки ожидаемому результату было напечатано следующее сообщение.
[root - INFO - 2019-10-22 12:18:03,798] Event: {'queryStringsParameters': {'datasetId': '6a9d03d7-5204-41b0-9e34-03c45b1224d7'}}
[root - INFO - 2019-10-22 12:18:03,798] START RequestId: 1134c088-32c4-495e-9ed2-b3580451a8d7 Version:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "c:\users\administrator\appdata\local\programs\python\python38\lib\multiprocessing\spawn.py", line 116, in
spawn_main
exitcode = _main(fd, parent_sentinel)
File "c:\users\administrator\appdata\local\programs\python\python38\lib\multiprocessing\spawn.py", line 126, in
_main
self = reduction.pickle.load(from_parent)
ModuleNotFoundError: No module named 'request-1134c088-32c4-495e-9ed2-b3580451a8d7'
Так что в этом пакете нет способа запустить его в Windows [https://github.com/HDE/python-lambda-local/issues/45). Если кто-нибудь знает, как запустить лямбда-функцию Python в Windows, ответьте.
Спасибо.