If you’re one to consume JSON api’s (who isn’t really?), then it’s likely you’ve bumped into the issue of figuring out whether the resource you just called is returning a single JSON object or an array payload. As per the JSON API Spec,
The document’s “primary data” is a representation of the resource or collection of resources targeted by a request. Primary data MUST be either: a single resource object, a single resource identifier object, or null, for requests that target single resources an array of resource objects, an array of resource identifier objects, or an empty array (), for requests that target resource collections
To help out all the Gophers out there, I created a simple little helper package to figure it out for you.
Checkout the code here https://gitlab.com/kylehqcom/whatjson.
It’s pretty simple really, so instead of having a dependency to my repo, just copy paste into your project instead.
WhatJSON() with a
body of type
byte and an optional prefix. The code will check the very next char after the prefix has been matched to determine whether the body is a object or an array. Go check out the code already!
Short n sweet, enjoy =]