iOS 利用PHP來進行訊息推送

2021-07-25 17:45:31 字數 1782 閱讀 9351

前提:

準備好推送證書

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節點,某乙個不可用了,那麼不就完蛋了?於是今天自己...