解析推送通知 - PHP API

Posted

技术标签:

【中文标题】解析推送通知 - PHP API【英文标题】:Parse Push Notification - PHP API 【发布时间】:2015-04-13 02:59:06 【问题描述】:

解析推送通知正在工作。问题是我正在尝试发送多行通知,而 php API 没有检测到我的 EOL 命令。消息完全按照我发送的方式到达:

第一行\r\n第二行

任何帮助将不胜感激。

非常感谢。

编辑

这是我的代码:

require 'autoload.php';

$app_id = "zzzzzzzzzzzzzzzzzzzzzzzzz";
$rest_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxx";
$master_key = "cccccccccccccccccccccccccccccccc";

\Parse\ParseClient::initialize( $app_id, $rest_key, $master_key );
use Parse\ParsePush;
$data = array("alert" => $_POST["txtMessage"]);
ParsePush::send(array("channels" => ["Test"], "data" => $data));

编辑#2:

我的数据数组:

array(1) (
  [alert] => (string) Line1\r\nLine2
)

【问题讨论】:

请添加负责发送和准备消息的源代码。 @awons 我将代码添加到问题中... 请同时转储您的 $data 数组。很高兴看看那里有什么。 【参考方案1】:

看起来你在途中的某个地方转义了你的字符串。

这就是转义字符串在 PHP 中的样子:

var_dump("Line1\\r\\nLine2");

string(14) "Line1\r\nLine2"

仅仅因为你转义了转义字符。

你需要的是这个:

var_dump("Line1\r\nLine2");

string(12) "Line1
Line2"

上面的代码应该会产生你需要的东西。检查代码的其他部分(也是前端部分)是否有任何内容转义字符串。

【讨论】:

以上是关于解析推送通知 - PHP API的主要内容,如果未能解决你的问题,请参考以下文章

解析推送通知仍会在 2017 年 1 月 28 日停止吗?

从 Apple 推送通知中解析数据

我如何注册Google Classroom API的推送通知?

APNs Provider API HTTP/2 使用 php,curl 导致发送的多个推送通知出错

推送通知 php 代码不适用于 Android

向我的 iPhone PHP 发送事件推送通知