main.go
package main
import (
    "encoding/json"
    "fmt"
    "net/http"
)
//Struktur deklarieren
type User struct {
    Name string `json:"name"`
    Age  int    `json:"age"`
}
func main() {
	// POST
    http.HandleFunc("/post", func(w http.ResponseWriter, r *http.Request) {
        var user User
        json.NewDecoder(r.Body).Decode(&user)
        fmt.Fprintf(w, "%s is %d years old!", user.Name, user.Age)
    })
    // GET
    http.HandleFunc("/get", func(w http.ResponseWriter, r *http.Request) {
        yuta := User{
            Name:  "yuta",
            Age:       666,
        }
        json.NewEncoder(w).Encode(yuta)
    })
    http.ListenAndServe(":8080", nil)
}
yuta:~ $ curl -s http://localhost:8080/get
{"name":"yuta","age":666}
yuta:~ $ 
yuta:~ $ 
yuta:~ $ curl -s -XPOST -d'{"name":"tadokoro","age":24}' http://localhost:8080/post
tadokoro is 24 years old!yuta:~ $ 
yuta:~ $ 
yuta:~ $ 
Recommended Posts