Json 在 golang dropbox 库中获取日期的问题

Json issue in getting date in golang dropbox library

我正在编写一个使用保管箱 api 学习围棋的小程序。我在这里使用客户端库:https://github.com/stacktic/dropbox

我可以上传和下载文件,所以我知道我的 api 密钥以及无法正常工作的密钥。使用元数据方法,我可以获得文件的元数据。但是,当我尝试使用 UnmarshalJSON 方法从条目结构中的 ClientMtime 项获取人类可读的日期时,我得到 "unexpected end of JSON input"。关于什么问题的任何想法?

我使用的代码如下:

func main() {

  db := dropbox.NewDropbox()
  db.SetAppInfo("Blah", "blah")
  db.SetAccessToken("Token")
  list,err := db.Metadata("/app_folder/test.jpg", true, false, "", "", 1)

  if err != nil {
    log.Fatal(err)
  }

  var date []byte
  err = list.ClientMtime.UnmarshalJSON(date)

  if err != nil {
    log.Fatal(err)
  }

  fmt.Printf("%v", date)
}

谢谢!

你想要:

date, err := list.ClientMtime.MarshalJSON()

UnmarshalJson 反之; []byte -> DBTime 这就是为什么它是输入错误的结尾,[]byte 是空的。

可选地,ClientMTime是一个时间。具有 String()Format() 方法的时间。

您可以通过转换来访问所有时间格式功能。

参见:https://github.com/stacktic/dropbox/blob/master/dropbox.go#L158