gpt4 book ai didi

php - APNS PHP JSON 负载结构

转载 作者:行者123 更新时间:2023-12-04 16:05:25 24 4
gpt4 key购买 nike

我正在通过 PHP 脚本发送推送通知以连接到 APNS 服务器。当我使用以下有效负载结构时,一切正常。

$body['aps'] = array(
'alert' => $message,
'badge' => $badge,
'sound' => 'default'

);

$payload = json_encode($body);

但是,我需要向“警报”元素添加更多参数,并希望添加更多自定义参数。我的做法如下,但 APNS 不接受 JSON。是不是我PHP的JSON创建方法有问题?

$payload='{

"aps": {
"alert":{
"title": "'.$message.'",
"body":"'.$notif_desc.'"
},
"badge":"'.$badge.'",
"sound": "default"


},
"type": "notification",
"id":"'.$lastid.'",
"date:"'.$date1.'"

}';

基本上,我有两个问题。第二种方法错了吗?如果是这样,请告诉我一个为 APNS 服务器创建嵌套 JSON 负载的有效方法。第二个问题,我需要在Payload中添加自定义PHP变量,我想知道我在第二种方法中添加的方式是否正确。

基本上,我需要在 PHP 中创建一个如下所示的 JSON 对象

{
"aps" : {
"alert" : {
"title" : "Game Request",
"body" : "Bob wants to play poker",
"action-loc-key" : "PLAY"
},
"badge" : 5,
},
"acme1" : "bar",
"acme2" : [ "bang", "whiz" ]
}

最佳答案

“日期”属性后缺少双引号:

"date:"'.$date1.'"

……应该是……

"date":"'.$date1.'"

我建议首先将有效负载作为 PHP 对象/数组放在一起(就像您原来的示例一样),因为以这种格式而不是巨大的串联字符串,更容易看到结构。例如

$payload['aps'] = array(
'alert' => array(
'title' => $title,
'body' => $body,
'action-loc-key' => 'PLAY'
),
'badge' => $badge,
'sound' => 'default'
);
$payload['acme1'] = 'bar';
$payload['acme2'] = array(
'bang',
'whiz'
);

$payload = json_encode($body);

关于php - APNS PHP JSON 负载结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33212049/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com