如何使用Parse Server和PHP发送推送通知

时间:2017-05-04 22:01:16

标签: php ios curl push-notification parse-server

我一直在努力让它整天都工作,没有运气。这是我有多远......

 <?php  
 $url = 'http://parse.verbomedia.com:1337/parse/push';  
 $appId = '******';  
 $masterKey = '******';  
 $headers = array(  
   "Content-Type: application/json",  
   "X-Parse-Application-Id: " . $appId,  
   "X-Parse-Master-Key: " . $masterKey
 );  
 $objectData = '{"where":{"deviceType":"ios"},"data":{"alert":"Hello, Parse!"}}';  
 $rest = curl_init();  
 curl_setopt($rest,CURLOPT_URL,$url);  
 curl_setopt($rest,CURLOPT_POST,1);  
 curl_setopt($rest,CURLOPT_POSTFIELDS,$objectData);  
 curl_setopt($rest,CURLOPT_HTTPHEADER,$headers);  
 curl_setopt($rest,CURLOPT_SSL_VERIFYPEER, false);  
 curl_setopt($rest,CURLOPT_RETURNTRANSFER, true);  
 $response = curl_exec($rest);  
 echo $response;  
 print_r($response);  
 curl_close($rest);  
 ?>  

通过Parse Dashboard可以正常工作。

关于我可能做错的任何想法?

2 个答案:

答案 0 :(得分:1)

php sdk目前支持通过ParsePush类进行客户端推送。以下是从php sdk的github页面上的README.md中的示例中提取的。

// Push to Channels
ParsePush::send(array(
    "channels" => ["PHPFans"],
    "data" => $data
), true);

// note the master key is required via 'true'

您也可以在docs中找到有关此sdk的其他示例和说明。

请注意,尽管php sdk支持此功能,但您必须首先在您的parse-server实例中设置working push configuration。尽管php sdk开箱即用,但如果没有事先正确设置,服务器将无法通过GCM或APNS处理推送通知。

答案 1 :(得分:0)

解析服务器(Read here)不支持

客户端推送,因此为了发送推送通知,您必须执行以下操作:

  1. 创建一个利用解析js SDK的云代码功能。在那里,您需要编写一些代码行以将推送发送到特定客户端(Read here

  2. 通过解析PHP SDK,通过将相关参数发送到您触发的云代码函数,触发PHP代码中的云代码功能