获取来自 Google Cloud Messaging 的 json 数据

Posted

技术标签:

【中文标题】获取来自 Google Cloud Messaging 的 json 数据【英文标题】:Get data of json comming from Google Cloud Messaging 【发布时间】:2015-02-24 18:35:45 【问题描述】:

我正在尝试从来自 Google Cloud Message (GCM) 的传入消息中获取一些信息。消息如下所示:


    "category":"com.myappplication",
    "data": 
        "my_message":"this data i need",
        "my_action":"com.google.android.gcm.demo.app.ECHO_NOW"
        ,
    "time_to_live"86400,
    "message_id":"5",
    "from":"ADJEKRJEKRJEKJREKRJLSDLKSJDLKJ23DSD22232320DSLKJ23"

我只能从“from”、“message_id”和“time_to_live”中获取数据。

在我的 php 脚本中,我解码传入的 json 消息

    $gcm_in = json_decode(str_replace(""", "\"", $stanza_in->childrens[0]->text));

    $from = $gcm_in->from;

如何获取my_message的信息?

【问题讨论】:

【参考方案1】:

考虑到您指定的 json 数据存储在变量 $data 中。

$objData = json_decode($data);
echo $objData->data->my_message;

json_decode函数将数据fomr json格式转换为php对象。

虽然我不确定为什么要尝试替换您的代码中的 " 以及您最初在哪个变量中接收数据。

【讨论】:

以上是关于获取来自 Google Cloud Messaging 的 json 数据的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 ruby​​ on rails 提供来自 google cloud bigquery 的分页结果

谷歌云消息服务的可靠性

验证来自 Google Cloud Scheduler 的 HTTP 请求

将参数从 Google Cloud 函数 GET 请求传递到 BigQuery

来自 DataProc 集群的 Google Cloud Sdk

com.google.android.gms.common.internal.safe parcel.safe parcelable 未找到