package logic import ( "HttpServer/conf" "bytes" "common/logger" "encoding/json" "strconv" "io/ioutil" //"log" "net/http" ) //定时处理倒计时 func StartHttpTicker() { } func StartHttpServe() { startServerHttpServe() } //just for test func Testsendhttp() { var test UserLoginData //test.Uuid = 100 test.Fromid = 200 test.Sharetype = 1 client := &http.Client{} bys, err := json.Marshal(&test) if err != nil { logger.Error("testsendhttp failed=%v", err) return } body := bytes.NewBuffer(bys) url := "http://127.0.0.1:50056/cat/login" reqest, err := http.NewRequest("POST", url, body) if err != nil { logger.Error("http.NewRequest failed") } reqest.Header.Add("Uuid", "101") //发送 //res, err := http.Post(url, "application/json;charset=utf-8", body) res, err := client.Do(reqest) if err != nil { logger.Error(" post failed to %v err:%v data:%v", url, err, string(bys)) return } result, _ := ioutil.ReadAll(res.Body) res.Body.Close() s := string(result) var resp GetUserDataResp resp.Code = 0 var rdata UserLoginResp _ = json.Unmarshal([]byte(s), &rdata) logger.Info("testsendhttp , body:%v", rdata) } func CheckErr(err error) { if err != nil { panic(err) } } func startServerHttpServe() { http.HandleFunc("/cat/login", UserLogin) //登录 err := http.ListenAndServe(conf.GetServerHttpAddrConf(), nil) CheckErr(err) } func UserLogin(w http.ResponseWriter, r *http.Request) { //logger.Info("%%%%%%%%%%%%%%%%path=%v", *r.URL) //for k, v := range r.Header { // logger.Info("*********************key=%v,value=%v", k, v) //} //w.Header().Add("Access-Control-Allow-Headers", "") //w.Header().Set("Access-Control-Allow-Headers", "Authorization, Content-Length, X-CSRF-Token, Token,session,X_Requested_With,Accept, Origin, Host, Connection, Accept-Encoding, Accept-Language,DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since, Cache-Control, Content-Type, Pragma") Uuid := 0 if len(r.Header) > 0 { Uuid, _ = strconv.Atoi(r.Header.Get("Uuid")) } if Uuid == 0 { return } result, _ := ioutil.ReadAll(r.Body) r.Body.Close() s := string(result) logger.Info("UserLogin , body:%v,uuid=%v", s, Uuid) //HandlerLogin(w, s, Uuid) }