0

我正在使用無服務器框架來創建使用fcm-push包的node.js後端的lambda函數。AWS無服務器框架Nodejs推送通知

期望的流動:從移動應用 呼叫API - > API使用FCM-推包有效載荷/消息/註冊標記發送到火力地堡雲Messsaging - >發送推送通知Android和iOS裝置

該作品當我在本地運行api時使用「無服務器調用本地...」

但是,當我做「無服務器部署」並從移動應用程序或其他客戶端(例如郵差)中啓動api端點時,api調用超時,我將超時時間改爲45秒,但仍然超時。爲了排除故障,我從api中刪除了所有與fcm相關的代碼,以查看api是否從移動應用程序/郵遞員發送響應時返回響應。它的確如此。因此,AWS似乎阻止api撥打fcm電話,並且通話持續到它超時。

我不知道我能做些什麼來解決這個問題,因爲我是相當新的使用AWS,所以如果您正在使用API​​網關爲連接到一個lambda API端點的任何輸入將是有益的

+0

一旦檢查了您的安全組列出的bond rules.may是它與防火牆的事情有關。 – Murali

+0

@Murali在控制檯上我可以檢查出站規則嗎? – yellowmonkey

+0

您的lambda函數是否在vpc中運行?如果是,則需要使用NAT實例或NAT網關啓用Internet訪問。這在lambda文檔中給出。 http://docs.aws.amazon.com/lambda/latest/dg/vpc.html#vpc-internet – user818510

回答

0

功能,那麼您需要在API網關本身中指定正文模板。確保您能夠獲取您通過REST API調用發送到您的API網關的Lambda函數中的值。

請先找到這個答案的link來達到同樣的效果。

+0

我的問題不是訪問API端點,問題是當從移動/郵遞員到達終端後「無服務器部署」時,api中的代碼無法使用fcm-push發送推送通知來調用Firebase雲消息傳遞。當我在本地調用此API時,推送通知會完美髮送 – yellowmonkey

+0

您正在使用** Firebase Web SDK **或** Firebase Admin SDK **嗎? ** Firebase Admin SDK **旨在運行在您託管的可信設備上,例如Node.js服務器。 ** Firebase Web SDK **針對客戶端設備,例如瀏覽器和Node.js IoT設備。 – Sudip