小编sad*_*lil的帖子

在Golang中从毫秒转换为时间

我有一些json数据,其中有一个名为lastModifed的字段包含以毫秒为单位的时间.我想用json.UnMarshaller将这些数据转换为结构类型.我用json提交了字段.但转换似乎无效.

IE:

我的Json看起来像这样:

{
   "name" : "hello",
   "lastModified" : 1438167001716
}
Run Code Online (Sandbox Code Playgroud)

和struct看起来像

type Model struct {
    Name         string    `json:"name"`
    Lastmodified time.Time `json:"lastModified"`
}
Run Code Online (Sandbox Code Playgroud)

看起来没有正确地转换时间.我怎么能从那些毫克中获得时间?

注意:lastModifiedTime的millis来自java System.currentTimeMillis();

json go unmarshalling

14
推荐指数
3
解决办法
1万
查看次数

golang protobuf从生成的json标签中删除omitempty标签

我正在使用谷歌grpc与json代理.由于某种原因,我需要omitempty从*.pb.go文件中生成的结构中删除标记.

如果我有这样的原型消息

message Status {
  int32 code = 1;
  string message = 2;
}
Run Code Online (Sandbox Code Playgroud)

生成的结构看起来像这样

type Status struct {
  Code int32 `protobuf:"varint,1,opt,name=code" json:"code,omitempty"`
  Message string `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
}
Run Code Online (Sandbox Code Playgroud)

但我需要omitempty从生成的结构中删除标记.我怎样才能做到这一点?

go protocol-buffers grpc proto3

14
推荐指数
5
解决办法
7941
查看次数

Kubernetes使用api观看Pod活动

我们有兴趣在启动或停止时将某些命令作为pod和服务运行.使用yml文件中的生命周期钩子对我们不起作用,因为这些命令不是可选的.我们考虑过运行一个使用watch api运行这些命令的观察器pod.但我们无法弄清楚如何使用手表api,以便它不会一次又一次地发送相同的事件.是否有办法告诉手表api仅在连接打开后才发送新事件?如果期望有状态的监视api是不合理的,是否可以通过时间戳或单调增加的id来避免已经看到的事件?

基本上我们现在正在做的是运行一个带有与api通信的守护进程的pod.我们可以将事件视为流.但是我们有兴趣在创建或删除pod时运行一些任务.

kubernetes

13
推荐指数
3
解决办法
1万
查看次数

Kubernetes将客户端api用于特定pod的日志

我正在使用kube go客户端和kube api来访问kube数据.我目前没有找到任何api调用特定pod的日志.

kubectl logs pod-name
Run Code Online (Sandbox Code Playgroud)

返回特定pod的日志.如何使用go客户端执行此操作?我正在使用kubernetes的v1.0.6.

我可以通过使用获得pod

client.Pods("namespace").Get("pod-name")
Run Code Online (Sandbox Code Playgroud)

kubernetes

10
推荐指数
1
解决办法
5787
查看次数

Golang,从子包中使用主包的结构或函数

我正在尝试编写一个包含多个子项目的 go 项目。举一个简单的例子,该项目如下所示

Main
 |- package one
    |- package one.one
    |- package one.two
 |- package two
Run Code Online (Sandbox Code Playgroud)

从我的主包中,我可以通过导入它们来使用任何子包的任何函数或结构。但我的问题是如何从任何子包访问 main 的结构或函数。

go

3
推荐指数
1
解决办法
5034
查看次数

如何从Go中的字符串方法名称调用另一个包的方法

假设我有两个包

-一个

-b

有这样的一些方法

 func TestOne() { //something }
 func TestTwo() { //something }
Run Code Online (Sandbox Code Playgroud)

我需要从包b调用package a的方法,但只需要字符串方法名称.就像我得到字符串"TestOne"并调用方法TestOne().我怎么能做到这一点.

编辑: 我已阅读reflect.但reflect需要一个结构和函数是该结构的成员.如果我的函数不是结构的成员怎么办?只是包中的普通方法.调用方法和调用方法在不同的包中.然后?

NB.可能有一些方法也有参数.

go

3
推荐指数
1
解决办法
3707
查看次数

在Go中编写全局函数 - 如append()

问题很简单 - 如何在golang中实现独立于包的全局函数.

ID,如果我在一个名为core的包中有一个函数,那么从另一个包中我需要core.Function()来调用该函数.但是我在go实现中有一些函数,比如 - make(),append()for slice,可以在没有任何导入的情况下使用,也可以直接在任何包中使用.如果我想写这样的函数是什么方法呢?如果可能的话,我怎么能写这样的函数呢?

go

0
推荐指数
1
解决办法
217
查看次数

标签 统计

go ×5

kubernetes ×2

grpc ×1

json ×1

proto3 ×1

protocol-buffers ×1

unmarshalling ×1