mirror of
https://github.com/mgerb/mywebsite
synced 2026-01-10 09:52:51 +00:00
78 lines
1.1 KiB
Go
78 lines
1.1 KiB
Go
package test
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
"github.com/julienschmidt/httprouter"
|
|
"net/http"
|
|
)
|
|
|
|
type Person struct {
|
|
Location City
|
|
Name string
|
|
Age int
|
|
Car []Car
|
|
}
|
|
|
|
type City struct {
|
|
Coords Coordinate
|
|
Population int
|
|
}
|
|
|
|
type Coordinate struct {
|
|
Latitude int
|
|
Longitude int
|
|
}
|
|
|
|
type Car struct {
|
|
Make string
|
|
Year int
|
|
}
|
|
|
|
// IndexGET displays the home page
|
|
func IndexGet(w http.ResponseWriter, r *http.Request, p httprouter.Params) {
|
|
|
|
params := p.ByName("test")
|
|
fmt.Println(params)
|
|
|
|
w.Header().Set("Content-Type", "application/json")
|
|
|
|
js := Person{
|
|
Location: City{
|
|
Coords: Coordinate{
|
|
Latitude: 23,
|
|
Longitude: 32,
|
|
},
|
|
Population: 5000,
|
|
},
|
|
Name: "Mitchell",
|
|
Age: 22,
|
|
Car: []Car{
|
|
Car{
|
|
Make: "Mitz",
|
|
Year: 2003,
|
|
},
|
|
Car{
|
|
Make: "Honda",
|
|
Year: 2016,
|
|
},
|
|
},
|
|
}
|
|
|
|
b, err := json.MarshalIndent(js, "", " ")
|
|
|
|
if err != nil {
|
|
fmt.Println(err.Error)
|
|
}
|
|
|
|
s := string(b)
|
|
|
|
fmt.Fprint(w, s)
|
|
|
|
}
|
|
|
|
func Api(w http.ResponseWriter, r *http.Request, p httprouter.Params) {
|
|
param := p.ByName("name")
|
|
fmt.Fprint(w, param)
|
|
}
|