我使用Firebase Cloud Messaging
进行android开发,PHP
作为服务器端语言。现在,我可以:
-
使用Firebase控制台接收推送通知发送,无论是真实应用程序还是模拟器。
-
从终端(卷曲)测试时工作正常
因此,我尝试从apps server
(使用php-ccurl)而不是Firebase Console
发送。现在,每次我请求POST请求时,都会遇到这个奇怪的消息InvalidTokenFormat, Error 400
。有什么想法吗?
以下是FirebaseApi的链接:FirebaseApiClass
请随意询问meif的任何输入,上面的用例不够清楚。谢谢
我的错误。url应该是(末尾没有斜杠):
https://fcm.googleapis.com/fcm/send
您需要从服务器向firebase发送请求,并附上通知的消息和用户的令牌,然后firebase将接受请求并以通知的形式向所有用户广播消息(我们提供的令牌)。
Firebase和设备采用轮询模式,因此只有Firebase可以在您的设备上发送通知,您可以使用该设备设置轮询,但谷歌不允许这样做,因为如果每个应用程序都开始使用该设备建立轮询隧道,这将占用大量资源。
您能将curl发送的原始请求发布到服务器吗?通常curl会提供打印输出,不确定php版本。
CURLOPT_POSTFIELDS不需要JSON。如果要发送application/x-www-form-urlencoded请求,请使用httpbuild_query($message),或者如果要发送多部分/form数据请求,请直接给它$message数组。