ios通知无法在laravel中设置私钥文件

Posted

技术标签:

【中文标题】ios通知无法在laravel中设置私钥文件【英文标题】:ios notification Unable to set private key file in laravel 【发布时间】:2016-04-09 16:06:54 【问题描述】:

我正在尝试使用 laravel 发送 ios 通知(使用 laravel-push-notification)但我收到此错误:Unable to connect: tls://gateway.sandbox.push.apple.com:2195: 2 (stream_socket_client(): Unable to set private key file /certificate/path.pem) 这是我的配置:'appNameIOS' => array( 'environment' =>'development', 'certificate' =>'../path.pem', 'passPhrase' => 'passPhrase', 'service' =>'apns' ),

但是在我从passPhrase 中删除引号后,我得到了HTTP error 500,响应正文没有任何错误。

我从this site一步一步创建了.pem文件。

注意:我正在使用 MAMP 服务器。

【问题讨论】:

您的“证书”路径很可能不正确。我会调试它。 @AngadDubey 我在我的应用程序中输入了正确的证书路径。因为如果我插入错误的路径,我会得到Certificate ../../PushCert.pem does not exist。注意:我在我的问题中编辑了示例路径。 【参考方案1】:

我认为 pem 证书没有正确创建。请务必从 p12 钥匙串元素中同时导出私钥和公钥。遵循指示here。

【讨论】:

是的。我再次创建了 pem 文件,一切正常,但我还有另一个问题。当我发送通知时,$push->getFeedback(); 返回空数组。如何跟踪通知。我如何知道通知是否已发送或是否出现问题?

以上是关于ios通知无法在laravel中设置私钥文件的主要内容,如果未能解决你的问题,请参考以下文章

iOS 推送通知已启用但无法正常工作

如何在 ionic.io -push 通知中设置大图像

2195端口是强制要求开放的吗? IOS 推送通知在 php 中不起作用,而 Ios 推送通知在 laravel 中没有进入移动设备

带有 socket-io 的 Laravel 事件 [接收通知]

无法从 Facebook iOS 应用中的通知中获取 request_ids

如何在 Unity(C#,目前针对 iOS)中设置每周重复推送通知?