2016-05-26 1 views
2

Ich habe einen Webhook für einen Facebook Chatbot mit PHP mit Laravel implementiert und alles funktioniert gut, wenn ich mein Bot ich eine Post-Anfrage mit der erwarteten Datenstruktur zu erhalten und ich schaffe es, alles gut zu machen. Dann habe ich versucht, die Webhook-Implementierung mit nodejs zu machen, aber wenn ich meinen Bot absende, ist die Post-Anfrage, die ich erhalte, nicht die, die man erwarten würde. Das ist irgendwie komisch, weil ich den Webhook mit dem Token validieren konnte. Ich habe die gleiche Facebook App und Seite verwendet, die ich für die PHP-Implementierung verwendet habe, also glaube ich nicht, dass das Problem dort ist. Hier ist der Code in Knoten: http://pastebin.com/0GQcXdV2Facebook Chatbot Post Callback hat nicht die korrekte Datenstruktur in Nodejs

ich die Anforderungsstruktur erwarten: http://pastebin.com/GFU89LjA

sondern dann ist es dies: http://pastebin.com/51S7DrkG

Es tut mir leid, wenn diese Frage dumm scheint und ich bin etwas fehlt offensichtlich, aber kann nicht herausfinden, was. Ich bin irgendwie neu zu Knoten js so vielleicht ist dies ein Neuling Fehler, aber wenn jemand mir sagen kann, was ich falsch mache, wäre es sehr geschätzt. Vielen Dank im Voraus

Antwort

1

Ich habe es geschafft, mein Problem zu lösen, indem ich npm body-parser importiere und meine Express-App für die Rückgabe von JSON benutze. Gemäß der npm-Dokumentation stellt das bodyParser-Objekt Middleware-Factorys bereit, die den Hauptteil der Anforderung offen legen und sie req.body im Klartext-, JSON-, Raw- oder URL-Codierungsformularkörper (https://www.npmjs.com/package/body-parser) zuweisen. Zu lösen mein Problem habe ich nur die folgenden zwei Codezeilen:

var bodyParser = require('body-parser'); 
app.use(bodyParser.json()); 

Mehr Informationen über Körper-Parser können here gefunden.

Verwandte Themen