2016-05-01 30 views
1

我無法將我的node.js服務器作爲Messenger Web掛鉤鏈接到我的Facebook應用程序。如果我嘗試在'/webhook'調用中驗證請求,Facebook在嘗試驗證並保存Web鉤子時給我一個找不到頁面的錯誤。如果我將代碼放在'/'調用中,即app.get('/',...)調用中,則在保存Web鉤子時出現內部服務器錯誤。我的應用程序託管在Heroku上。在檢查英雄日誌時,我看到這個錯誤。如何將一個node.js webhook鏈接到我的Facebook應用程序的messenger API?

引用錯誤:

hub is not defined

,並指出這條線:

res.send(hub.query['hub.challenge']) 

我的代碼是:

var express = require('express') 
var bodyParser = require('body-parser') 
var request = require('request') 
//the imports 

app = express() 
app.set('port', (process.env.PORT || 5000)) 
app.use(bodyParser.urlencoded({extended: false})) 

// Process application/json 
app.use(bodyParser.json()) 
app.get('/',function(req,res){ 
    if (req.query['hub.verify_token'] === 'my_voice_is_my_password_verify_me') { 
    res.send(hub.query['hub.challenge']) 
    } 
    res.send('wrong token,error') 
}) 


app.get('/webhook',function(req,res){ 
    if (req.query['hub.verify_token'] === 'my_voice_is_my_password_verify_me') { 
    res.send(hub.query['hub.challenge']) 
    } 
    res.send('wrong token,error') 
}) 


app.listen(app.get('port'), function(req,res) { 
    console.log('server running on port',app.get('port')) 
}) 

回答

3

更換hub.queryreq.query你想訪問不存在的對象。

+1

非常感謝你! – venky

相關問題