Ich versuche, auf meinem PHP Webserver einen Web-Hook für die neue Facebook Messenger-Bot-Plattform einzurichten und erhalte folgende Fehlermeldung:
Die URL konnte nicht überprüft werden. Die Antwort entspricht nicht der Herausforderung erwarteter Wert = '364011207', empfangen = '
https://developers.facebook.com/docs/messenger-platform/quickstart
https://developers.facebook.com/docs/messenger-platform/webhook-reference#common_format
Jede Hilfe wird sehr geschätzt.
Ich habe eine Lösung gefunden. Ich habe meinen js-Versuch verworfen und eine neue PHP-Datei mit folgendem Code erstellt:
<?php
$challenge = $_REQUEST['hub_challenge'];
$verify_token = $_REQUEST['hub_verify_token'];
if ($verify_token === 'my_token_code') {
echo $challenge;
}
Ich habe diesen Code aus den ersten 10 Minuten dieses Videos erhalten: https://www.facebook.com/marketingdevelopers/videos/883648801749520/
Dieser Code ist node.js -Code und sollte auf dem Server nicht in einem <script>
-Tag in Ihrem HTML-Code ausgeführt werden.
Hier können Sie den Messenger-Bot mit node.js auf einfache Weise einrichten: https://github.com/voronianski/simon-le-bottle
Im Wesentlichen müssen Sie sicherstellen, dass Sie über einen Host verfügen, der node.js-Anwendungen unterstützt, und diesen als solchen ausführen. Es funktioniert nicht in HTML.
Ich habe dieses Problem soeben gelöst, dass in der Rückruf-URL '/ webhook' hinzugefügt wurde.
@schan
webhook: function(req, res) {
if (req.query['hub.verify_token'] === 'tokentoken') {
res.send(req.query['hub.challenge']);
} else {
res.send('Error, wrong validation token');
}
}
Notieren Sie sich, was genau Sie tun. aber das ist was ich getan habe und es funktioniert.
Ich habe den Ngrok-Server getestet, da ich keinen Domänennamen habe und die Rückruf-URL https://werwrwetwtw.ngrok.io/webhook ist.
Hoffe das hilft!
Wenn Sie dies als Node.js
-Anwendung ausführen und Sie aus der in der Frage erwähnten The Facebook Quickstart Guide kommen, müssen Sie die Webhook-URL auf [your-server-root]/webhook
verweisen. Beachten Sie diesen Teil von des Tutorials :
// Adds support for GET requests to our webhook
app.get('/webhook', (req, res) => {
...
// Responds with the challenge token from the request
res.status(200).send(challenge);
});
Nicht sicher, ob diese Hilfe, aber die Abfrageparameter, die der FB sendet, sind mit Unterstrich gekennzeichnet, z. :
P.S.
Sorry, das ist gültig für PHP