add json
This commit is contained in:
parent
fb9904cf03
commit
3c239f6114
@ -11,6 +11,7 @@ func main() {
|
||||
r := ron.New()
|
||||
|
||||
r.GET("/", helloWorld)
|
||||
r.GET("/json", helloWorldJSON)
|
||||
r.POST("/another", anotherHelloWorld)
|
||||
|
||||
slog.Info("Server is running at http://localhost:8080")
|
||||
@ -24,3 +25,7 @@ func helloWorld(c *ron.Context) {
|
||||
func anotherHelloWorld(c *ron.Context) {
|
||||
c.W.Write([]byte("another hello world"))
|
||||
}
|
||||
|
||||
func helloWorldJSON(c *ron.Context) {
|
||||
c.JSON(200, map[string]string{"message": "hello world"})
|
||||
}
|
||||
|
||||
10
ron.go
10
ron.go
@ -2,6 +2,7 @@ package ron
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@ -12,6 +13,15 @@ type Context struct {
|
||||
E *Engine
|
||||
}
|
||||
|
||||
func (c *Context) JSON(code int, data interface{}) {
|
||||
c.W.WriteHeader(code)
|
||||
c.W.Header().Set("Content-Type", "application/json")
|
||||
encoder := json.NewEncoder(c.W)
|
||||
if err := encoder.Encode(data); err != nil {
|
||||
http.Error(c.W, err.Error(), http.StatusInternalServerError)
|
||||
}
|
||||
}
|
||||
|
||||
type Engine struct {
|
||||
mux *http.ServeMux
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user