diff --git a/base.go b/base.go deleted file mode 100644 index 9e7267a..0000000 --- a/base.go +++ /dev/null @@ -1,106 +0,0 @@ -package helper - -import ( - "encoding/json" - "git.tetele.net/tgo/conf" - "git.tetele.net/tgo/site" - "git.tetele.net/tgo/userrpc" - "io/ioutil" - "log" - "net/http" - "strings" -) - -type BaseController struct { - W http.ResponseWriter - Req *http.Request - SiteInfo map[string]string - UserInfo map[string]string - Token string - Domain string - JsonData map[string]interface{} - JsonDataArr []map[string]interface{} -} - -//前置操作 -func (controller *BaseController)Construct(w http.ResponseWriter, req *http.Request) { - log.Println("get from ", req.RemoteAddr, req.Method, req.Referer()) - - controller.W = w - controller.Req = req - - var replyJson []byte - - SetHeader(w, req) - - if strings.ToUpper(req.Method) == "OPTIONS" { - replyJson, _ = json.Marshal(1) - w.Write(replyJson) - return - } - - data := make(map[string]interface{}) - - var err error - - if conf.IS_PRIVATE { - controller.SiteInfo = map[string]string{ - "database": conf.DBNAME, - "site_id": conf.SITE_ID, - } - } else { - controller.SiteInfo, err = site.GetSiteInfoFromReq(conf.MASTER_URL, req) - } - - if controller.Token != "" { - controller.UserInfo, err = userrpc.GetUserByToken(controller.SiteInfo["database"], controller.Token, conf.USER_RPC_URL) - } - - controller.Domain = GetDomain(req) - - //获取json数据 - body, _ := ioutil.ReadAll(req.Body) - defer req.Body.Close() - - if len(body) > 0 { - if strings.Index(string(body),"[{") == 0 { - err = json.Unmarshal(body, &controller.JsonDataArr) - } else{ - err = json.Unmarshal(body, &controller.JsonData) - } - } - - if err != nil { - data["code"] = 0 - data["msg"] = err.Error() - replyJson, _ = json.Marshal(data) - w.Write(replyJson) - return - } - -} - -func (controller *BaseController) Success(result interface{}) { - data := make(map[string]interface{}) - - data["data"] = result - data["code"] = 1 - data["msg"] = "" - - returnData, _ := json.Marshal(data) - - controller.W.Write(returnData) -} - -func (controller *BaseController) Error(msg string) { - - data := make(map[string]interface{}) - - data["data"] = nil - data["code"] = 0 - data["msg"] = msg - - returnData, _ := json.Marshal(data) - - controller.W.Write(returnData) -} \ No newline at end of file