samedi 25 avril 2015

Getting Instagram subscription JSON data from post in PHP


This whole process of subscriptions for the Instagram API seems to be less than straight forward.

I have some code set up to receive the post data sent when Instagram hits me with a notification of a post from one of my subscriptions. However when I try to view the data the raw JSON it posts I can't get at it. If I print_r or var_dump I just get the number 1.

See my code for accessing the data:

    // Catches realtime updates from Instagram
if ($_SERVER['REQUEST_METHOD']==='POST') {
     // Retrieves the POST data from Instagram
    $update = file_get_contents('php://input');
    $data = json_decode($update);

    var_dump($data); //Outputs 1
    print_r($data[0]); //Outputs 1

}   

How can I get at the JSON as an array?

This is what the JSON should look like:

[
    {
        "subscription_id": "1",
        "object": "user",
        "object_id": "1234",
        "changed_aspect": "media",
        "time": 1297286541
    },
    {
        "subscription_id": "2",
        "object": "tag",
        "object_id": "nofilter",
        "changed_aspect": "media",
        "time": 1297286541
    },
    ...
]

Thanks for any help.


Aucun commentaire:

Enregistrer un commentaire