wuyuncheng-26's picture
upload files from Harry-zklcdc/go-proxy-bingai
d669ddb verified
package helper
import (
"adams549659584/go-proxy-bingai/common"
"encoding/json"
"net/http"
)
type Response struct {
Code int `json:"code"`
Message string `json:"message"`
Data interface{} `json:"data"`
}
func CommonResult(w http.ResponseWriter, code int, msg string, data interface{}) error {
res := Response{
Code: code,
Message: msg,
Data: data,
}
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(code)
err := json.NewEncoder(w).Encode(res)
if err != nil {
return err
}
return nil
}
func SuccessResult(w http.ResponseWriter, data interface{}) error {
return CommonResult(w, http.StatusOK, "success", data)
}
func ErrorResult(w http.ResponseWriter, code int, msg string) error {
return CommonResult(w, code, msg, nil)
}
func UnauthorizedResult(w http.ResponseWriter) error {
return ErrorResult(w, http.StatusUnauthorized, "unauthorized")
}
func CheckAuth(r *http.Request) bool {
isAuth := true
if len(common.AUTH_KEYS) > 0 {
if common.AUTH_KEYS[0] != "" {
ckAuthKey, _ := r.Cookie(common.AUTH_KEY_COOKIE_NAME)
isAuth = ckAuthKey != nil && len(ckAuthKey.Value) > 0 && common.IsInArray(common.AUTH_KEYS, ckAuthKey.Value)
}
}
return isAuth
}