您正在与邮递员合作制作我的json对象FCM消息: 但是当我尝试发送时:
{
"to":"fzvihT7dFUI:APA91bFVhnWAxXVjlWiiHIs9ZUyL1DE2hZO6GpItJtReh3hcKF1kD6mLuQq9fNP9xvS5bOFWUOG-OW-uyOedc1C43m8jfvD4OOfsBYuMbM7t1-dZEy2kQcuv3gJw6dhneVus2AR_hQHQ",
"data":[
{
"time":1501385514224,
"CC":"1030626890"
}
],
"notification":{
"body":"SPO2:95 \nPulso:75",
"title":"El paciente Daniel Ortiz nesecita asistencia"
}
}
回应:
字段“data”必须是JSON数组: [{ “CC”: “1030626890”, “时间”:1501385514224}]
但是我知道[{"CC":"1030626890","time":1501385514224}]
它是一个数组,我不明白这个问题。
我做错了什么?
答案 0 :(得分:5)
从Firebase Cloud Messaging documentation开始,似乎data
应该是JSON对象:
{
"to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
"data" : {
"Nick" : "Mario",
"body" : "great match!",
"Room" : "PortugalVSDenmark"
},
}
我不确定为什么错误消息会说它需要是一个数组。它就像是"associative array",它实际上只是JSON对象的另一个术语。
答案 1 :(得分:0)
我可能已经来不及了,但是对于那些仍然面临这个问题的人来说,改变之后救了我。
通过将JSON_FORCE_OBJECT
添加到json_encode()
,它将添加缺少的花括号,因此应该是这样的:
json_encode($fields ,JSON_FORCE_OBJECT));
就是这样。