Hi Steven,

Thanks for your prompt response. I know that, but I can not figure out how
to define that in my struct :(

On Wed, Sep 26, 2018 at 5:55 PM Steven Hartland <ste...@multiplay.co.uk>
wrote:

> If you look closely they have a strange structure:
>  "users": [*[*{...},{...}*]*]
>
> You've created:
> "users":[{...},{...}]
>
> On 26/09/2018 14:43, 'Mudasir Mirza' via golang-nuts wrote:
>
> Hey guys,
>
> I am fairly new to GoLang, still learning.
>
> I am trying to working on a small utility, which fetches details from a
> third party.
> As per their documentation, I will get response something like
>
> {
>   "users": [
>     [
>       {
>         "firstName": "string ",
>         "lastName": "string",
>         "username": "string",
>         "email": "string",
>         "createdAt": "string",
>         "passwordLastUpdated": "string",
>         "verified": true,
>         "_selfUrl": "string"
>       },
>       {
>         "firstName": "string ",
>         "lastName": "string",
>         "username": "string",
>         "email": "string",
>         "createdAt": "string",
>         "passwordLastUpdated": "string",
>         "verified": true,
>         "_selfUrl": "string"
>       }
>     ]
>   ]
> }
>
> For this, I created struct type
>
> type V1User struct {
>  FirstName             string  `json:"firstName,omitempty"`
>  LastName              string  `json:"lastName,omitempty"`
>  UserName              string  `json:"username,omitempty"`
>  Email                 string  `json:"email,omitempty"`
>  CreatedAt             string  `json:"createdAt,omitempty"`
>  PasswordLastUpdated   string  `json:"passwordLastUpdated,omitempty"`
>  Verified              bool    `json:"verified,omitempty"`
>  SelfUrl               string  `json:"_selfUrl,omitempty"`
> }
>
>
> type allUsers struct {
>  users   []V1User `json:"users,omitempty"`
> }
>
> I am pretty sure I am missing out on something. I am running below code to
> fetch and decode the data
>
> func (c *Client) getUsers() (users []allUsers, err error) {
>  resp, err := c.request(http.MethodGet, "user", nil)
>  if err != nil {
>  return
>  }
>  defer resp.Body.Close()
>  var result = struct {
>  Users []allUsers
>  }{}
>  err = json.NewDecoder(resp.Body).Decode(&result)
>  return result.Users, err
> }
>
> and I get error
>
> fmt.Println(result.Users)  ->  Users:  [{[]}]
> fmt.Println(err)   ->   Error:  json: cannot unmarshal array into Go
> struct field .Users of type main.allUsers
>
> I am still trying to figure out what's wrong here, any help will be
> appreciated.
>
> --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "golang-nuts" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/golang-nuts/QAju97M7JHY/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>


-- 
Mudasir Mirza
DevOps Manager
Dubizzle

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to