本文整理汇总了Golang中github.com/bitly/go-simplejson.Json.Get方法的典型用法代码示例。如果您正苦于以下问题:Golang Json.Get方法的具体用法?Golang Json.Get怎么用?Golang Json.Get使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/bitly/go-simplejson.Json
的用法示例。
在下文中一共展示了Json.Get方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: parseResult
func parseResult(data *json.Json) (string, bool) {
for i, _ := range data.Get("results").MustArray() {
item := data.Get("results").GetIndex(i)
address, ok := item.CheckGet("formatted_address")
if ok {
return address.MustString(), true
}
}
return "", false
}
示例2: Message
func (this *Context) Message(data *simplejson.Json) {
content, err := data.Get("content").String()
if err != nil {
log.Println(err)
return
}
gContexts.SendAll(map[string]interface{}{
"type": "message",
"userName": this.UserName,
"content": content,
})
}
示例3: Initialize
func Initialize(json *simpleJson.Json) *SlackBot {
if slackBot != nil {
return slackBot
}
self := json.Get("self")
slackBot = &SlackBot{
Id: self.Get("id").MustString(),
Name: self.Get("name").MustString(),
}
return slackBot
}
示例4: Init
func (p *NsqSrcProvider) Init(ctx *sj.Json) error {
var err error
p.nsqMsgChan = make(chan nsq.Message) // not buffered
p.timeOutSec = ctx.Get("timeout_sec").MustInt()
nsqLookupdAddrs := ctx.Get("nsq_lookupd_addrs").MustStringArray()
if len(nsqLookupdAddrs) <= 0 {
return errors.New("no nsq_lookupd_addr in provided")
}
topic := ctx.Get("topic").MustString()
channel := ctx.Get("channel").MustString()
p.config = nsq.NewConfig()
p.consumer, err = nsq.NewConsumer(topic, channel, p.config)
if p.consumer == nil || err != nil {
return err
}
p.consumer.AddHandler(nsq.HandlerFunc(func(message *nsq.Message) error {
p.nsqMsgChan <- *message
return nil
}))
err = p.consumer.ConnectToNSQLookupds(nsqLookupdAddrs) // ip:port
if err != nil {
return errors.New("Could not connect to nsqLookupd")
}
return nil
}
示例5: Auth
func (this *Context) Auth(data *simplejson.Json) {
userName, err := data.Get("userName").String()
if err != nil {
log.Println(err)
return
}
this.UserName = userName
// send message
userNames := gContexts.GetAllUserNames()
gContexts.SendAll(map[string]interface{}{
"type": "auth",
"message": userName + "进入聊天室",
"userNames": userNames,
})
}
示例6: BuildMongoWhere
func BuildMongoWhere(where *simplejson.Json, primaryKey string) bson.M {
mongoWhere := bson.M{}
for key, value := range where.MustMap() {
switch key {
case "and", "or", "nor":
mongoWhere["$"+key] = buildMongoWhereByArray(
where.Get(key),
primaryKey,
)
continue
case primaryKey:
mongoWhere["_id"] = value
continue
}
mongoWhere[key] = value
}
return mongoWhere
}
示例7: Init
func (p *DmSrcProvider) Init(ctx *sj.Json) error {
var err error
p.monitorIntervalSec = ctx.Get("monitor_interval_sec").MustInt(10)
p.popLastFile = ctx.Get("pop_last_file").MustBool(true)
p.timeOutMs = ctx.Get("time_out_ms").MustInt(10000)
p.dataDir = ctx.Get("data_dir").MustString("/tmp")
stat, err := os.Stat(p.dataDir)
if (err != nil && !os.IsExist(err)) || !stat.IsDir() {
return errors.New("data dir not valid")
}
p.lastFileMap = make(map[string]string)
paths := ctx.Get("monitor_paths").MustStringArray()
if len(paths) <= 0 {
return errors.New("no monitor_paths is provided")
}
if err = p.initMonitorPaths(paths); err != nil {
return err
}
return nil
}
示例8: Init
func (p *Workshop) Init(ctx *sj.Json, upCtrlChan chan int, upReportChan chan int, isTest bool) error {
p.ctx = ctx
p.upCtrlChan = upCtrlChan
p.upReportChan = upReportChan
p.processedLine = 0
var err error
if err = p.initLog(isTest); err != nil {
return err
}
logger.Debug("workshop init log success")
if err = p.initSrcProvider(); err != nil {
return err
}
logger.Debug("workshop init srcProvider success")
p.cronTickInterval = ctx.Get("main").Get("cron_tick_interval").MustInt()
p.memLimit = ctx.Get("main").Get("mem_limit").MustUint64()
p.PRCtrlChan = make(chan int, 1000) // 1000 is enough
p.PRReportChan = make(chan int)
p.CLCtrlChan = make(chan int, 1000) // 1000 is enough
p.CLReportChan = make(chan int)
if err = p.initChannel(isTest); err != nil {
return err
}
logger.Debug("workshop init channel and subroutine success")
logger.Info("start... config:\n[", *p.ctx, "]\n")
if isTest {
p.provider.Destory()
}
logger.SetConsole(false)
return nil
}
示例9: Init
func (p *PrintProcessor) Init(ctx *sj.Json, id int, itemChans [](chan Item)) error {
p.id = id
p.itemChans = itemChans
p.category = ctx.Get("category").MustString("print")
return nil
}
示例10: parseCreateJobBody
func parseCreateJobBody(js *simplejs.Json) (string, map[string]string) {
m := make(map[string]string)
jobname, err := js.Get("jobname").String()
if err != nil {
log.Errorf("parse \"jobname\" failed")
return "", nil
}
/*
else {
m["jobname"] = jobname
fmt.Println(jobname)
}*/
if desc, err := js.Get("description").String(); err != nil {
log.Errorf("parse \"description\" failed")
return "", nil
} else {
m["desc"] = desc
}
if repositryrUrl, err := js.Get("repositryurl").String(); err != nil {
//log.Errorf("parse \"repositryurl\" failed")
log.Errorf(err.Error())
return "", nil
} else {
m["repositryurl"] = repositryrUrl
}
/*
if credentialsId, err := js.Get("credentialsid").String(); err != nil {
log.Errorf("parse \"credentialsid\" failed")
return nil
} else {
m["credentialsid"] = credentialsId
}
*/
if usr, err := js.Get("username").String(); err != nil {
log.Errorf("parse \"username\" failed")
return "", nil
} else {
m["username"] = usr
}
if passwd, err := js.Get("password").String(); err != nil {
log.Errorf("parse \"password\" failed")
return "", nil
} else {
m["password"] = passwd
}
if branchesToBuild, err := js.Get("branches").String(); err != nil {
log.Errorf("parse \"branches\" failed")
return "", nil
} else {
m["branchestobuild"] = branchesToBuild
}
/*
// builders
bdrs := js.Get("builders").Get("dockerbuildandpublish")
if bdrs == nil {
log.Errorf("parse \"dockerbuildandpublish\" failed")
return nil
}
*/
if repoName, err := js.Get("repositryname").String(); err != nil {
log.Errorf("parse \"repositryname\" failed")
return "", nil
} else {
m["repositryname"] = repoName
}
if tag, err := js.Get("tag").String(); err != nil {
log.Errorf("parse \"tag\" failed")
return "", nil
} else {
m["tag"] = tag
}
if dockerRegistryUrl, err := js.Get("dockerregistryurl").String(); err != nil {
log.Errorf("parse \"dockerregistryurl\" failed")
return "", nil
} else {
m["dockerregistryurl"] = dockerRegistryUrl
}
if dockerHostUri, err := js.Get("dockerhosturi").String(); err != nil {
log.Errorf("parse \"dockerhosturi\" failed")
return "", nil
} else {
m["dockerhosturi"] = dockerHostUri
}
if skipPush, err := js.Get("skippush").String(); err != nil {
log.Errorf("parse \"skippush\" failed")
return "", nil
} else {
m["skippush"] = skipPush
}
if cmd, err := js.Get("command").String(); err != nil {
log.Errorf("parse \"command\" failed")
return "", nil
//.........这里部分代码省略.........