Tôi nhận được lỗi này sau khi cố gắng thực thi tập lệnh php của tôi để gửi thông báo đẩy tới iphone của tôi.Thông báo đẩy trong PHP
Tôi đã thử mọi thứ và không có gì hiệu quả. Tôi tin rằng điều này có nghĩa là ck.pem
của tôi là sai nhưng tôi không chắc liệu key.pem của nó hoặc cert.pem có sai hay không.
Xin giúp
Script
// This this a fake device id:
$deviceToken = '9870h8v088bj29u080af894jj67klfgcv9mmm79k8e4l23456h908743n093e359';
// fake password:
$passphrase = '123456';
// Put your alert message here:
$message = 'New Message';
////////////////////////////////////////////////////////////////////////////////
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);
// Open a connection to the APNS server
$fp = stream_socket_client(
'ssl://gateway.sandbox.push.apple.com:2195', $err,
$errstr, 60, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $ctx);
if (!$fp)
exit("Failed to connect: $err $errstr" . PHP_EOL);
echo 'Connected to APNS' . PHP_EOL;
// Create the payload body
$body['aps'] = array(
'alert' => $message,
'sound' => 'default',
'badge' => '1'
);
// Encode the payload as JSON
$payload = json_encode($body);
// Build the binary notification
$msg = chr(0) . pack('n', 32) . pack('H*', $deviceToken) . pack('n', strlen($payload)) . $payload;
// Send it to the server
$result = fwrite($fp, $msg, strlen($msg));
if (!$result)
echo 'Message not delivered' . PHP_EOL;
else
echo 'Message successfully delivered' . PHP_EOL;
// Close the connection to the server
fclose($fp);
?>
Lỗi
Warning: stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages:
error:14094416:SSL routines:SSL3_READ_BYTES:sslv3 alert certificate unknown in /Users/daveking/Desktop/App Certificates/simplepush.php on line 21
Warning: stream_socket_client(): Failed to enable crypto in /Users/daveking/Desktop/App Certificates/simplepush.php on line 21
Warning: stream_socket_client(): unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Unknown error) in /Users/daveking/Desktop/App Certificates/simplepush.php on line 21
Failed to connect: 0
Có thể trùng lặp: http://stackoverflow.com/questions/6372308/apns-ssl-gateway-sandbox-push-apple-com2195-connection-fails –
@TimNhững điều này không giúp tôi. Nó là hơi tương tự vì chúng đối phó với các thông báo đẩy nhưng nó không giống nhau. – BigT
có thể là trọng tải của bạn có kích thước lớn hơn 256 byte được Apple cho phép, do đó nó có thể gây ra 'fwrite' hoặc lỗi này - tôi gặp vấn đề này –