本文整理汇总了Golang中github.com/rking788/hotseats-api/Godeps/_workspace/src/github.com/gin-gonic/gin.Context.JSON方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.JSON方法的具体用法?Golang Context.JSON怎么用?Golang Context.JSON使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/rking788/hotseats-api/Godeps/_workspace/src/github.com/gin-gonic/gin.Context
的用法示例。
在下文中一共展示了Context.JSON方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: statusHandler
func statusHandler(c *gin.Context) {
response := map[string]string{
"msg": "Let's Heat those Seats!!\n",
"status": "Success",
}
c.JSON(http.StatusOK, response)
}
示例2: roomPOST
func roomPOST(c *gin.Context) {
roomid := c.Param("roomid")
userid := c.PostForm("user")
message := c.PostForm("message")
room(roomid).Submit(userid + ": " + message)
c.JSON(200, gin.H{
"status": "success",
"message": message,
})
}
示例3: ListEvents
// ListEvents should return a JSON list of events for a particular stadium.
func ListEvents(c *gin.Context) {
stadium := c.Param("stadium")
if stadium == "" {
errMsg := "Error: no stadium specified when requesting events!"
fmt.Println(errMsg)
c.JSON(http.StatusBadRequest, map[string]string{"status": errMsg})
}
// Store the new event in the DB
dbConn, dbErr := db.GetDBConnection()
if dbErr != nil {
fmt.Printf("Found err: %s\n", dbErr.Error())
c.JSON(http.StatusInternalServerError,
map[string]string{"status": "Error cannot connect to DB!"})
return
}
// Find the `sid` by which the events will be selected
var outStadium model.Stadium
dbConn.Table("stadiums").Where("name = ?", stadium).First(&outStadium)
fmt.Printf("Found sid=%d\n", outStadium.Sid)
fmt.Printf("Getting events for stadium: %s\n", stadium)
// Select all events in the events table by the `sid`
eventList := make([]model.Event, 0, 3)
dbConn.Where(&model.Event{Sid: outStadium.Sid}).Find(&eventList)
response := make(map[string][]model.Event)
response["events"] = eventList
c.JSON(http.StatusOK, response)
}
示例4: roomPOST
func roomPOST(c *gin.Context) {
roomid := c.Param("roomid")
nick := c.Query("nick")
message := c.PostForm("message")
message = strings.TrimSpace(message)
validMessage := len(message) > 1 && len(message) < 200
validNick := len(nick) > 1 && len(nick) < 14
if !validMessage || !validNick {
c.JSON(400, gin.H{
"status": "failed",
"error": "the message or nickname is too long",
})
return
}
post := gin.H{
"nick": html.EscapeString(nick),
"message": html.EscapeString(message),
}
messages.Add("inbound", 1)
room(roomid).Submit(post)
c.JSON(200, post)
}
示例5: CreateEvent
// CreateEvent is responsible for reading and parsing the JSON
// string from the request body and persisting it ... somewhere.
func CreateEvent(c *gin.Context) {
var evt model.Event
fmt.Printf("Content-Type from request: %s\n", c.ContentType())
err := c.Bind(&evt)
if err == nil {
fmt.Printf("Creating event: %v...\n", evt)
// Store the new event in the DB
dbConn, dbErr := db.GetDBConnection()
if dbErr != nil {
fmt.Printf("Found err: %s\n", dbErr.Error())
c.JSON(http.StatusInternalServerError,
map[string]string{"status": "Error cannot connect to DB!"})
return
}
// Find the `sid` value that should be used when inserting the new event
var outStadium model.Stadium
dbConn.Table("stadiums").Where("name = ?", evt.Stadium.Name).First(&outStadium)
fmt.Printf("Found sid=%d\n", outStadium.Sid)
if outStadium.Sid == 0 {
fmt.Println("Didn't find a stadium with that name!!")
c.JSON(http.StatusBadRequest, map[string]string{"status": "Error no stadium with that name"})
return
}
evt.Sid = outStadium.Sid
dbConn.Create(&evt)
c.JSON(http.StatusCreated, map[string]string{"status": "Success"})
} else {
errMsg := fmt.Sprintf("Error: %s", err.Error())
fmt.Println(errMsg)
c.JSON(http.StatusBadRequest, map[string]string{"status": errMsg})
}
}