本文整理汇总了Golang中github.com/daryl/qstn/app.Context.Seg方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.Seg方法的具体用法?Golang Context.Seg怎么用?Golang Context.Seg使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/daryl/qstn/app.Context
的用法示例。
在下文中一共展示了Context.Seg方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: entriesGet
func entriesGet(c *app.Context) {
id := c.Seg(2)
s, entry := api.EntryGet(c, id)
if s != 200 {
c.Error(s)
return
}
c.JSON(entry)
}
示例2: entriesID
func entriesID(c *app.Context) {
if c.Seg(2) == "random" {
entriesRandom(c)
return
}
switch c.R.Method {
case "GET":
entriesGet(c)
return
}
c.Error(404)
}
示例3: socket
func socket(c *app.Context) {
ws, err := grader.Upgrade(c.W, c.R, nil)
defer ws.Close()
if err != nil {
return
}
slug := c.Seg(2)
coll := c.DB.C("entries")
var entry models.Entry
if _, ok := hubs[slug]; !ok {
hubs[slug] = NewHub()
}
hub := hubs[slug]
cli := hub.Add(ws)
go cli.Ping(30 * time.Second)
for {
if err = ws.ReadJSON(&entry); err != nil {
break
}
coll.Update(bson.M{
"slug": slug,
}, bson.M{
"$set": entry,
})
for ws, _ := range hub.clients {
ws.WriteJSON(entry)
}
}
if len(hub.clients) == 0 {
delete(hubs, slug)
}
hub.Remove(ws)
}