//Put("/api/servers/:id", "update :id server") func (self *ServerAPI) Update(w http.ResponseWriter, r *http.Request) (json string, err error) { params := r.URL.Query() id := params.Get(":id") server, err := SM.Show(id) if err != nil { return } opt := &models.Server{} decoder := j.NewDecoder(r.Body) err = decoder.Decode(opt) if err != nil { return } server, err = models.New(opt.Port, opt.Method, opt.Password, opt.Limit, opt.Timeout) if err != nil { return } err = server.Update() if err != nil { return } err = SM.Create(server) if err != nil { return } return }
//Post("/api/servers", "create new") func (self *ServerAPI) Create(w http.ResponseWriter, r *http.Request) (json string, err error) { opt := &models.Server{} decoder := j.NewDecoder(r.Body) err = decoder.Decode(opt) if err != nil { err = errors.Newf("get params from request failed: %v", err) return } server, err := models.New(opt.Port, opt.Method, opt.Password, opt.Limit, opt.Timeout) if err != nil { return } err = SM.Create(server) if err != nil { return } return }