Я пытался создать webhook для задачи в Asana, но единственный ответ, который я получаю, это:
{
"errors": [
{
"message": "Could not complete activation handshake with target URL. Please ensure that the receiving server is accepting connections and supports SSL",
"help": "For more information on API status codes and how to handle them, read the docs on errors: https://asana.com/developers/documentation/getting-started/errors"}
]
}
(Статус: 400 Неверный запрос)
Я отправляю POST запрос через почтальона https://app.asana.com/api/1.0/webhooks
со следующим содержанием:
{
"data":
{
"resource": 123456789012345,
"target": "https://example.com/asana.php"}
}
asana.php
выглядит примерно так:
$headers = getallheaders();
$secret_token = $headers['X-Hook-Secret'];
header('X-Hook-Secret: ' . $secret_token);
Что я делаю неправильно? Я что-то пропустил?
Согласно Asana API Reference (https://asana.com/developers/api-reference/webhooks),
Цель должна ответить 200 OK и соответствующим заголовком X-Hook-Secret, чтобы подтвердить, что эта подписка на веб-крючок действительно ожидается.
Когда вы отправляете заголовок, знаете ли вы, какой код ответа отправляется? Возможно, вы захотите взглянуть на $http_response_code
аргумент в http://php.net/manual/en/function.header.php
Других решений пока нет …