當我嘗試發送推送通知時,出現此錯誤:「連接被拒絕」,但我不知道爲什麼...我已經上傳了我的apns-dev。 pem在同一個目錄以及根目錄下,但是也不起作用。推送通知(iPhone)給出「111連接被拒絕」
<?php
$payload['aps'] = array('alert' => 'This is the alert text', 'badge' => 1, 'sound' => 'default');
$payload = json_encode($payload);
$apnsHost = 'gateway.sandbox.push.apple.com';
$apnsPort = 2195;
$apnsCert = 'apns-dev.pem';
$apnsPass = 'secret';
$streamContext = stream_context_create();
stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);
stream_context_set_option($streamContext, 'ssl', 'passphrase', $apnsPass);
$apns = stream_socket_client('ssl://' . $apnsHost . ':' . $apnsPort, $error, $errorString, 60, STREAM_CLIENT_CONNECT, $streamContext);
if (!$apns) {
echo "Error: $errorString ($error)";
}
// Do this for each
$deviceToken = '00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000';
$apnsMessage = chr(0) . chr(0) . chr(32) . pack('H*', str_replace(' ', '', $deviceToken)) . chr(0) . chr(strlen($payload)) . $payload;
fwrite($apns, $apnsMessage);
// End do
socket_close($apns);
fclose($apns);
?>
有人知道我在做什麼錯嗎?當我刪除密碼短語並且不發送它也不起作用...
真的非常感謝,我要檢查這是否有效。 你的意思是通過絕對路徑的FTP路徑(/public-html/directory/file.pem)或(http://www.server.com/directory/file.pem)? 我得到這個錯誤之前我發送任何數據,所以它不是設備令牌,我認爲... 感謝:D! – elslooo 2009-10-09 14:51:11
它不起作用:(...,下面是我的答案,以防止這種錯誤。 – elslooo 2009-10-09 16:29:05