https://github.com/yandex-cloud-examples/yc-serverless-apigw-hello-world-go
Пример интеграции API Gateway и Yandex Cloud Functions с использованием контекста операции.
https://github.com/yandex-cloud-examples/yc-serverless-apigw-hello-world-go
golang serverless yandex-cloud yandex-function yandexcloud
Last synced: 8 months ago
JSON representation
Пример интеграции API Gateway и Yandex Cloud Functions с использованием контекста операции.
- Host: GitHub
- URL: https://github.com/yandex-cloud-examples/yc-serverless-apigw-hello-world-go
- Owner: yandex-cloud-examples
- License: apache-2.0
- Created: 2024-03-13T20:00:10.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-16T06:28:26.000Z (8 months ago)
- Last Synced: 2025-02-16T07:23:54.801Z (8 months ago)
- Topics: golang, serverless, yandex-cloud, yandex-function, yandexcloud
- Language: Go
- Homepage:
- Size: 7.81 KB
- Stars: 0
- Watchers: 6
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Go Cloud Function Example
Пример интеграции API Gateway и Cloud Functions с использованием контеста операции.
Контекст операции - это параметр context расширения
[x-yc-apigateway-integration:cloud_functions](https://cloud.yandex.ru/docs/api-gateway/concepts/extensions/cloud-functions)
OpenAPI-спецификации. Значение данного параметра может иметь вложенную структуру, но ограничено размером в 2Kbyte.
Контекст операции позволяет параметризовать функцию-интеграцию для набора типовых операций OpenAPI-спецификации.
В примере API-гейтвей передает в функцию значение параметра пути запроса `/{name}` через поле
`requestContext.apiGateway.operationContext.name`
[контекста операции](https://cloud.yandex.ru/docs/functions/concepts/function-invoke#request)## Запуск
1. Создайте облачную функции, в качестве среды выполнения выберите Go и вставьте код из [handler.go](handler.go)
и [event.go](event.go) в соответствующие файлы
2. Создайте API Gateway и вставьте спецификацию из [openapi-example.yaml](openapi-example.yaml),
подставив в неё идентификатор ранее созданной функцииДля тестирования откройте в браузере `https://<служебный домен созданного API-шлюза>/world`
## Запуск функции из терминала
go run . []
## Тесты
go test .