Согласно этой документации [https://cloud.google.com/tasks/docs/creating-http-target-tasks], нужно иметь возможность создавать задачи с типом 'http_request' и 'http_method', установленным на 'POST', но поведение не ожидается, если задача всегдасозданный методом 'GET'.
После возникновения этой проблемы при использовании клиентской библиотеки Python, я решил попробовать API напрямую и проверить, была ли это проблема с библиотекой или самим API.
Используя «Try this API» со страницы документации продукта [https://cloud.google.com/tasks/docs/reference/rest/v2beta3/projects.locations.queues.tasks/create], я пытался создавать похожие задачи, используя типы http_request и app_engine_http_request и всегда устанавливая http_method в POST.
Если я установлю тело запроса следующим образом:
{
"task": {
"appEngineHttpRequest": {
"httpMethod": "POST",
"relativeUri": "/test",
"body": "c2hhbGxvdyBub3c="
}
}
}
... задача будет создана, и метод будет POST, как ожидалось.Но если я установлю тело запроса на:
{
"task": {
"httpRequest": {
"httpMethod": "POST",
"url": "https://httpstat.us/404",
"body": "c2hhbGxvdyBub3c="
}
}
}
... задача будет создана, но с методом GET вместо POST.
Вот что я получаю в своей очереди:
Я считаю, что это ошибка, и поэтому я сообщаю об этом здесь с тегом google-apis-explorer, как рекомендовано на странице поддержки.
В любом случае, если бы кто-нибудь мог сказать мне, если я делаю что-то не так или есть ли какое-то решение в это время, я был бы очень признателен.
Спасибо!