2017-08-07 136 views
1

我試圖將Laravel中的推送通知發送到iOS應用程序,我正在使用Laravel的Push Notification Package。這是我的配置文件:Laravel推送通知:證書不存在

return array(

     'appNameIOS' => array(
      'environment' => 'development', 
      'certificate' => base_path('app/cert/APNS_Cert_Hasalty_dev.p12'), 
//I am using absolute path in the actual code 
      'passPhrase' => '', 
      'service' => 'apns' 
     ), 
     'appNameAndroid' => array(
      'environment' => 'production', 
      'apiKey' => 'yourAPIKey', 
      'service' => 'gcm' 
     ) 

    ); 

這是我在做什麼,以發送通知:現在

$payload = PushNotification::Message('Hello World, i`m a push message from hasalty', array(
      'badge' => 1, 
      'sound' => 'default', 
     )); 

     PushNotification::app('appNameIOS') 
      ->to($deviceToken) 
      ->send($payload); 

,證書文件存在於在配置中給出的路徑,但它拋出我的錯誤:

Certificate app/cert/APNS_Cert_Hasalty_dev.p12 does not exist

我在做什麼錯?任何幫助? Laravel的版本是5.3.31

+0

添加你的.p12路徑而不是'path/to/APNS_Cert_Hasalty_dev.p12',例如''certificate'=>'..../APNS_Cert_Hasalty_dev.p12','(... ...你保存了p12 add證書的路徑) –

+0

我已更新我的問題,請看看。 – Saani

+0

檢查一次你的路徑是否有效,如果有效檢查一個.p12文件是否放在該地方 –

回答

0

我明白了。事實上,我正在使用.p12文件,並將其更改爲.pem文件,它工作。可以研究這些差異b/w here

0

試試這個,改用絕對路徑。 __DIR__。'/ path/to/certificate.pem'