123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- package api
- import (
- "net/http"
- "github.com/gorilla/mux"
- )
- type Short struct {
- Short string `json:"short"`
- }
- type Target struct {
- Target string `json:"target"`
- }
- func ListenAndServe(addr string) error {
- router := mux.NewRouter()
- router.HandleFunc("/{short}", handleGetShort).
- Methods("GET", "HEAD").
- Name("kurz.get_short")
- router.HandleFunc("/", handlePostTarget).
- HeadersRegexp("Content-Type", "^application/json$").
- Methods("POST").
- Name("kurd.post_target")
- http.Handle("/", router)
- err := http.ListenAndServe(addr, router)
- return err
- }
|