通过PHP发送Apple推送通知(curl)

时间:2014-03-15 15:28:23

标签: php curl apple-push-notifications

告诉我如何通过推送CURL php发送消息?这种承诺不起作用:

 $ch = curl_init();

curl_setopt($ch, CURLOPT_URL,'https://gateway.push.apple.com:2195');

 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

 curl_setopt($ch, CURLOPT_HEADER, 1);

 curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json"));

 curl_setopt($ch, CURLOPT_POST, 1);

 curl_setopt($ch, CURLOPT_SSLCERT,'1.pem');

 curl_setopt($ch, CURLOPT_SSLCERTPASSWD, "12345");

 curl_setopt($ch, CURLOPT_POSTFIELDS, '{"device_tokens": ["........................................."], "aps": {"alert": "test message one!"}}');

 $curl_scraped_page = curl_exec($ch);

 echo $curl_scraped_page;

1 个答案:

答案 0 :(得分:0)

您无法使用CURL发送Apple推送通知。

您正尝试使用HTTPS请求向Apple发送推送通知。这不起作用,因为Apple推送通知不适用于HTTP。它们仅通过TCP协议使用特定的二进制格式。

  

作为提供商,您可以通过二进制界面与Apple推送通知服务进行通信。该接口是供应商的高速,高容量接口;它将流式TCP套接字设计与二进制内容结合使用。二进制接口是异步的

您可以stream_context代替CURL。您可以找到许多代码示例。