2013-03-13 182 views
0

我需要通過代理連接到Apple PNS。我正在使用PHP來開發應用程序。目前,我已經搜索了很多,但無處找到一個使用代理與流上下文的例子。 也做了這裏提到的步驟: Using Charles and SSL Apple push addressApple通過代理推送PHP通知

下面是代碼片段。請人建議,其高度迫切

if(PROXY_ADDRESS != '' && PROXY_PORT !='') 
{  
$opts = array('http' => array('proxy' => 'tcp://'.PROXY_ADDRESS.':'.PROXY_PORT, 'request_fulluri' => true)); 
$streamContext = stream_context_create($opts); 
} 
else 
{ 
$streamContext = stream_context_create(); 
} 

stream_context_set_option($streamContext, 'ssl', 'local_cert', $this->_privateKey); 

if($this->_privateKeyPassphrase !== '') 
    stream_context_set_option($streamContext, 'ssl', 'passphrase', $this->_privateKeyPassphrase); 

$fp = fopen('https://gateway.sandbox.push.apple.com:2195', 'r', false, $streamContext); 

我沒有得到任何錯誤/異常,但沒有收到推送消息。

+0

您確定您的錯誤報告已打開嗎? – 2013-03-13 12:13:56

+0

是的,它已打開。 – kaps 2013-03-13 12:24:37

+0

我也遇到過這些鏈接http://stackoverflow.com/questions/13524971/ping-to-apns-not-returning。這是真的嗎? – kaps 2013-03-13 12:24:55

回答

0

對於那些誰可能會遇到同樣的問題:

蘋果PNS不允許連接通過代理服務器來。它只接受直接連接。當我直接連接而不是通過代理時,我的問題得到了解決。

+0

我們在哪裏可以找到有關通過服務器連接到apns的文檔? – Lucabro 2013-06-19 15:41:28