2016-04-26 9 views
0

zu raten Also ich bin gerade neu und mit Node.js & Express starten, aber ich befolge dieses Tutorial https://github.com/jw84/messenger-bot-tutorial, und ich verstehe das meiste, aber, aus mit dem folgenden Code:Versuchen, Code von Body-Parser und Node.js

app.post('/webhook/', function (req, res) { 
messaging_events = req.body.entry[0].messaging 
for (i = 0; i < messaging_events.length; i++) { 
    event = req.body.entry[0].messaging[i] 
    sender = event.sender.id 
    if (event.message && event.message.text) { 
     text = event.message.text 
     sendTextMessage(sender, "Text received, echo: " + text.substring(0, 200)) 
    } 
} 
res.sendStatus(200) 

ich verstehe nicht, was „Eintrag“ und „Messaging“ zu tun oder wo tun sie kommen in req.body.entry[0].messaging

Antwort

0

entry und messaging aus dem JSON in der POST-Anfrage kommen. In Zeile 12 des Lernprogramms (https://github.com/jw84/messenger-bot-tutorial/blob/master/index.js#L12) können Sie sehen, dass der Autor den eingehenden Anfragetext für JSON analysiert. Dieser JSON wird der Eigenschaft body der eingehenden Anforderung hinzugefügt. Kurz gesagt, es ist spezifisch für sein Beispiel. Wenn die eingehende Anfrage sah wie folgt aus:

{ data: ["messaging": "hi"], ["messaging": "bye"] } 

dann würde entry stattdessen müssen data geändert werden.

Zusätzlich können Sie sehen, dass dies Teil der Messenger-Spezifikation in den Facebook-Dokumenten ist: https://developers.facebook.com/docs/messenger-platform/quickstart#receive_messages

Verwandte Themen