2016-06-27 39 views
0

我有一個node.js代碼,我在cloud9上運行開發,我想訂閱我的「測試」Facebook頁面信使到該鏈接,以便將其用於測試\沙盒。爲什麼我不能使用Cloud9鏈接訂閱Facebook webhook?

但是當我嘗試訂閱網絡掛接到CLOUD9鏈接我的應用程序上運行,我得到這個:

enter image description here

我使用的鏈接是:https://node- .c9users.io 端口是8080

如果我在應用程序運行時直接從瀏覽器導航到該鏈接 - 我確實收到了回覆。爲什麼FB訂閱無法通過?

+1

您收到回覆,但是您看過檢查員中的網絡選項卡嗎?顯然,在Facebook的口味最終迴應之前,它會重新定向太多次。 – jonrsharpe

+0

@jonrsharpe你是否有機會知道它是否是Cloud9託管應用程序的默認行爲?:( – GeekSince1982

+0

我完全不知道,沒有。 – jonrsharpe

回答

0

默認情況下,您需要在C9上登錄以查看發佈的URL,因此當Facebook嘗試註冊時會收到「登錄到C9頁面」而不是您的應用URL。

要解決此問題,您需要共享您的webhook正在運行的工作區並將其公開。

轉到「窗口 - >共享」並點擊複選框「公共」爲您的應用程序。

Sharing your workspace Sharing your App URL

0

除了@Roberdam的答案我會recommande您設置GET路線爲如下因素:

app.get('/', function (req, res) { 
console.log(req); 
if (req.query['hub.verify_token'] === 'verifycode') { 
res.send(req.query['hub.challenge']); 
} 
res.send('Error, wrong validation token!'); 
}); 

其中hub.challenge是一個隨機生成的值你的webhook返回。

相關問題