前提:
準備好推送證書
aps_development.cer及其p12檔案aps_development.p12
開始:
假設p12檔案
密碼是:
123456
終端操作:進入到存放
cer與
p12檔案的資料夾
1.利用
aps_development.cer
檔案生成
.pem
檔案openssl x509 -in aps_development.cer -inform der -out cer.pem
2.利用
aps_development.p12
檔案生成
.pem
檔案:openssl pkcs12 -nocerts -out p12.pem -in aps_development.p12
需要輸入
p12的密碼:
123456
mac verified ok
enter pem pass phrase:(
設定密碼
)654321
verifying - enter pem pass phrase:(
再次輸入密碼
)654321
3.利用兩個
.pem
檔案生成另乙個
.pem
檔案cat cer.pem p12.pem > cp.pem
4.發訊息
php push.php
push.php
檔案要注意的地方:
1.devicetoken
2.p12.pem
密碼3.cp.pem
檔案。**中:
stream_context_set_option($ctx, 'ssl', 'local_cert', 'cp.pem'); 名字要對應。
php檔案**:
要想一步一步的學,請
參考部落格:
如果執行命令後,出現錯誤:
warning: stream_socket_client(): ssl operation failed with code 1. openssl error messages:
error:14090086:ssl routines:ssl3_get_server_certificate:certificate verify failed in push.php on line 21
stream_context_set_option($ctx, 'ssl', 'local_cert', 'cp.pem');
stream_context_set_option(
$ctx
,'ssl'
,'cafile'
,'entrust_2048_ca.cer'
);stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);
:參考部落格:
不清楚,是不是因為php版本的問題,還是因為從一台電腦上匯出p12檔案到另一台電腦使用,就需要加上2048那個檔案。
第一台電腦,php版本(檢視命令 php -v),不需要2048檔案。
php 5.5.29 (cli) (built: sep 9 2015 00:26:40)
另一台mac電腦,php版本是,需要2048檔案。
php 5.6.25 (cli) (built: sep 19 2016 15:45:41)
IOS訊息推送。
本來ios開發工程師說要使用個推,但是我們是做金融的,可能需要給使用者推送訂單狀態等等。這樣的話用起來就會很不方便,於是在網上找了找資料自己動手寫了乙個。就是簡易基礎的,希望大家看了能夠有用。需要引入幾個jar包 import com.notnoop.apns.apns import com.not...
細說 iOS 訊息推送
經常有同學問我們,ios上推送究竟怎麼做啊,為什麼我的裝置總收不到推送呢,這裡跟大家集中討論一下ios上推送的實現細節。為了實現訊息推送,有兩點非常重要 一條訊息推送過來,可以有如下幾種表現形式 開發者可以在每次推送的時候設定,在推送達到使用者裝置時開發者也可以選擇不同的提示方式。nsdiction...
使用nsqlookupd來推送訊息
其實有點兒文不對題,不是使用nsqlookupd來推送的,最終還是使用nsqd來進行推送。nsq的golang客戶端中,consumer實現了從nsqlookupd中動態拉取服務列表,並進行消費,但是producer中沒有實現這個,假設有n個nsqd節點,某乙個不可用了,那麼不就完蛋了?於是今天自己...