title: Has Json tag but not exported
body: <p>Begining to study golang.
  Task: Get Json and Unmarshall it.
  But I get mistake:</p>
  
  <pre><code>Json tag but not exported
  </code></pre>
  
  <p>How to make unexported fields become exported and then implement it using methods?</p>
  
  <p>Here is the code:</p>
  
  <pre><code>package main
  
  import (
      "encoding/json"
      "fmt"
      "io/ioutil"
      "net/http"
  )
  
  type Time struct {
      time
  }
  type time struct {
      id                    string  `json:"$id"`
      currentDateTime       string  `json:"currentDateTime,string"`
      utcOffset             float64 `json:"utcOffset,string"`
      isDayLightSavingsTime bool    `json:"isDayLightSavingsTime,string"`
      dayOfTheWeek          string  `json:"dayOfTheWeek,string"`
      timeZoneName          string  `json:"timeZoneName,string"`
      currentFileTime       float64 `json:"currentFileTime,string"`
      ordinalDate           string  `json:"ordinalDate,string"`
      serviceResponse       string  `json:"serviceResponse,string"`
  }
  
  func (t *Time) GetTime() (Time, error) {
      result := Time{}
  
      return result, t.Timenow(result)
  }
  func (t *Time) Timenow(result interface{}) error {
  
      res, err := http.Get("http://worldclockapi.com/api/json/utc/now")
      if err != nil {
          fmt.Println("Cannot get Json", err)
      }
  
      body, err := ioutil.ReadAll(res.Body)
      if err != nil {
          fmt.Println("Cannot create Body", err)
      }
  
      defer res.Body.Close()
  
      var resultJson interface{}
      return json.Unmarshal(body, &amp;resultJson)
  
  }
  
  func main() {
  
      var a Time
      t, err := a.GetTime()
      if err != nil {
          fmt.Println("Error ", err)
      }
      fmt.Println("Time:", t)
  }
  </code></pre>
  
  <p>Please explain in details whats wrong with struct and how to get right response?</p>