Подтвердить что ты не робот

URL-адрес API-интерфейса Facebook Messenger не может быть изменен "

Я пытаюсь настроить API-мессенджер Facebook, и я получаю эту ошибку, когда я пытаюсь добавить WebHook:

URL не может быть проверен. Ошибка проверки обратного вызова со следующими ошибками: curl_errno = 60; curl_error = проблема с сертификатом SSL: невозможно получить сертификат локального эмитента; Код состояния HTTP = 200; HTTP-сообщение = установлено соединение

Я установил свой NodeJS-сервер, используя код, который они предоставили в учебнике. Здесь url: https://stackoverload.me/chatter/webhook

ИЗМЕНИТЕ ЗДЕСЬ РЕЗОЛЮЦИЮ (кто-то хотел увидеть код):

var express = require('express');

var fs = require('fs');
var https = require('https');

var app = express();
app.use(express.static('public'));

// SSL
https.createServer(
    {
        ca: fs.readFileSync(__dirname + '/server.ca'),
        key: fs.readFileSync(__dirname + '/server.key'),
        cert: fs.readFileSync(__dirname + '/server.cert')
    }
, app).listen(443, function() {
    console.log('Server is now running.');
});

// HTTP redirect to SSL
express()
    .get('*', function(req,res){
        res.redirect('https://example.com' + req.url)
    })
    .listen(80);
4b9b3361

Ответ 1

Забыл ответить на это, но я узнал, что добавил файл ca и параметр на свой https-сервер, а затем Facebook принял его.

Ответ 3

пытался настроить FB messenger webhook с сильным маркером подтверждения. В некотором роде: o\/ERviEE\/vt0|<E|\|

o/ERviEE/vt0 | < E |\| проверить набор токенов

То же самое было проверено в коде:

req.query['hub.verify_token'] === 'o\/ERviEE\/vt0|<E|\|'

Однако значение, полученное от FB, равно: o\\/ERviEE\\/vt0|<E|\\|

o \/ERviEE \/vt0 | < E |\| проверить токен get

Это странно. Кажется, что нет ссылки на документ, в которой говорится о том, как Facebook ускользает от специальных символов для проверки токенов или подобных. Не уверен, что это происходит и для других объектов.

Заключение: нужно быть немного осторожным при использовании специальных символов для проверки токенов.

Потому что Facebook ускользает от специальных символов для проверки токенов webhooks.