Обработчик запросов функции на PHP
Обработчик запросов — это метод, который используется для обработки каждого вызова функции на PHP. При создании версии функции необходимо указать точку входа, которая состоит из имени файла и имени обработчика запросов (например, index.myFunction
).
Примечание
В каждый момент времени один экземпляр функции обрабатывает только один запрос. Это позволяет использовать глобальные переменные без необходимости обеспечивать контроль целостности данных.
При вызове обработчика среда выполнения передает следующие аргументы:
-
Тело запроса (параметр
event
).Если тело запроса — JSON-документ, то оно будет преобразовано в
Array
с помощью методаjson_decode
. -
Контекст вызова (параметр
context
).Контекст содержит необходимую информацию о версии функции. Структура этого объекта описана в разделе Контекст вызова функции на PHP.
Обработчик представляет из себя функцию, объявленную в глобальном пространстве имен, которая принимает два аргумента.
Чтобы вернуть результат выполнения, используйте оператор return
или сигнализируйте об исключении с помощью оператора throw
.
Примеры
Вывод структуры HTTP-запроса
Следующая функция выводит структуру запроса и контекста вызова одновременно и в журнал выполнения, и в ответ функции:
<?php
function myHandler ($event, $context) {
$resp = [
'event' => $event,
'context' => $context,
];
return [
'statusCode' => 200,
'body' => json_encode($resp),
];
}
Синхронный обработчик
Функция возвращает подготовленный ответ или ошибку:
<?php
function myHandler ($event, $context) {
$message = "not lucky";
if (rand() % 2 == 0) {
$message = "lucky one";
}
return [
'statusCode' => 200,
'headers' => [
'Content-Type' => 'text/plain',
],
'body' => $message,
];
}