package q5 import "net" import "net/http" import "time" func GetDaySeconds(seconds int64) int64 { return 0 } func GetTickCount() int64 { return time.Now().UnixNano() / 1e6 } func MkInt64(lo32 int32, hi32 int32) int64 { return int64(lo32) + (int64(hi32) << 32) } func Request(r *http.Request, name string) *XValue { if r.Form == nil { r.ParseForm() } v := &XValue{} if vs, ok := r.Form[name]; ok { if len(vs) > 0 { v.SetString(vs[0]) } else { v.SetString("") } } return v } func GetRequestRemoteAddr(r *http.Request) string { remoteAddr := r.RemoteAddr if ip := r.Header.Get("X-Real-Ip"); ip != "" { remoteAddr = ip } else if ip = r.Header.Get("X-Forwarded-For"); ip != "" { remoteAddr = ip } else { remoteAddr, _, _ = net.SplitHostPort(remoteAddr) } if remoteAddr == "::1" { remoteAddr = "127.0.0.1" } return remoteAddr }