告诉我如何通过推送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;
答案 0 :(得分:0)
您无法使用CURL发送Apple推送通知。
您正尝试使用HTTPS请求向Apple发送推送通知。这不起作用,因为Apple推送通知不适用于HTTP。它们仅通过TCP协议使用特定的二进制格式。
作为提供商,您可以通过二进制界面与Apple推送通知服务进行通信。该接口是供应商的高速,高容量接口;它将流式TCP套接字设计与二进制内容结合使用。二进制接口是异步的
您可以stream_context
代替CURL。您可以找到许多代码示例。