从服务器调用Firebase云消息传递不起作用

时间:2016-08-01 14:19:00

标签: php curl firebase firebase-cloud-messaging

我刚刚开发了一个firebase网络应用服务器。我发送通知,一切似乎都没问题,但在我的Android应用程序中没有收到任何通知。如果我从firebase控制台发送通知,它来到我的Android应用程序。但是我想从我的网络应用程序发送它。

这是我的网络应用程序的PHP代码:

public function sendMessage($data,$target=null){
        //FCM api URL
        $url = 'https://fcm.googleapis.com/fcm/send';
        //api_key available in Firebase Console -> Project Settings -> CLOUD MESSAGING -> Server key
        $server_key = 'S6GzaCUhIbS6GzaCAIzaSyJtkQLzl3FCUhIbUhIbS6Gza8A';

        //$fields = array();
        //$fields['data'] = $data;
        if(is_array($target)){
            $fields['registration_ids'] = $target;
        }

            $fields = array(
        'notification' => array('title' => 'Working Good', 'body' => 'That is all we want'),
        'data' => array('message' => "melaapa")
    );



        //header with content_type api key
        $headers = array(
            'Content-Type:application/json',
          'Authorization:key='.$server_key
        );

        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
        $result = curl_exec($ch);
        if ($result === FALSE) {
            die('FCM Send Error: ' . curl_error($ch));
        }
        curl_close($ch);
        var_dump($result);
        return $result;
        }

的输出
  

的var_dump($结果)

  

string(3)" to"

对于正常工作的firebase服务器应该有什么响应?或者我如何理解我的firebase服务器工作正常?

0 个答案:

没有答案