Пользователь error_handlers в app.yaml возвращает HTTP-ответ - PullRequest
0 голосов
/ 23 октября 2019

Чтобы процитировать документацию от GCP , вы можете использовать error_handlers в вашем app.yaml для настройки пользовательских страниц ошибок, которые возвращаются для различных типов ошибок. Из документации есть только упоминание об использовании .html файлов.

Есть ли способ отправить HTTP-ответ вместо HTML-страницы?

Например, желаемый результат может быть достигнут в nginx с помощью следующего:

server {
 error_page                            502 @bad_gateway;
 location @bad_gateway {
  return                               502 '{\n\t"success": false,\n\t"code": -1,\n\t"message": "Server is down",\n\t"status_code": 502,\n\t"status_message": "Bad Gateway",\n\t"detailed": ["Server is down"]\n}';
  add_header                           Content-Type "application/json charset=UTF-8" always;
  internal;
 }
}

1 Ответ

0 голосов
/ 23 октября 2019

Google App Engine использует скрипт обработчика, который соответствует URL-адресу в файле конфигурации app.yaml, когда он получает веб-запрос к вашему приложению. Здесь - это вся необходимая информация о том, как обрабатываются запросы в стандартной среде Google App Engine. Я поместил бы эту логику в файл сценария и отправил оттуда ответ HTTP, поскольку поле error_handlers специально используется для настройки пользовательских страниц ошибок. Проверьте эту ссылку как ссылку на файл app.yaml.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...