2017-09-15 115 views
0

請大家幫忙。
我對火力的要求是這樣的:通過PHP Curl向firebase發送notofication,獲得成功響應,但沒有通知交付

curl https://fcm.googleapis.com/fcm/send -X POST \ 
--header "Authorization: key=my-api-key" \ 
--Header "Content-Type: application/json" \ 
-d ' 
{ 
    "to": "firebase-instance-id" 
    "notification":{ 
    "title":"New Notification!", 
    "body":"Test" 
    }, 
    "priority":10 
}' 

而且我得到的迴應:

{ 
    "multicast_id":7748668110190879774, 
    "success":1, 
    "failure":0, 
    "canonical_ids":0, 
    "results":[{ 
     "message_id":"0:1505463398077072%3f95c2ka3f95c2ca" 
    }] 
} 

但我看到在火力地堡控制檯列表無添加的通知,也沒有電話。有什麼建議麼?也許有一些設置我應該改變,以便可以通過curl從我的服務器發送通知?提前致謝。

回答

0

Firebase很奇怪,根據他們的文檔,你發送的是正確的JSON內容,但Apple's documentation需要稍微修改一下格式,特別是一個「aps」封裝器的消息。

"aps" : { 
    "alert" : { 
     "title" : "Game Request", 
     "body" : "Bob wants to play poker", 
     "action-loc-key" : "PLAY" 
    }, 
    "badge" : 5 
} 

嘗試將Apple的JSON格式添加到當前的JSON有效內容中,並查看它是如何響應的。從那裏你可以調整你的有效負載,以確保它適用於Android(這是Firebase的文檔適用)和iOS。

0

我認爲你畸形的FCM有效載荷。它缺少逗號(),優先級值應爲high

'{ 
    "to": "firebase-instance-id", 
    "notification":{ 
    "title":"New Notification!", 
    "body":"Test" 
    }, 
    "priority":"high" 
}' 

與克里斯的答案相反,不要使用APNs有效載荷格式,因爲您首先從FCM發送它。

相關問題