This commit is contained in:
withchao 2023-06-11 14:48:30 +08:00
parent a990e6f19d
commit c16e7fc022
3 changed files with 27 additions and 22 deletions

View File

@ -1,13 +1,11 @@
package msggateway package msggateway
import ( import "github.com/OpenIMSDK/Open-IM-Server/pkg/apiresp"
"net/http"
)
func httpError(ctx *UserConnContext, err error) { func httpError(ctx *UserConnContext, err error) {
code := http.StatusUnauthorized //code := http.StatusUnauthorized
ctx.SetHeader("Sec-Websocket-Version", "13") //ctx.SetHeader("Sec-Websocket-Version", "13")
ctx.SetHeader("ws_err_msg", err.Error()) //ctx.SetHeader("ws_err_msg", err.Error())
//if errors.Is(err, errs.ErrTokenExpired) { //if errors.Is(err, errs.ErrTokenExpired) {
// code = errs.ErrTokenExpired.Code() // code = errs.ErrTokenExpired.Code()
//} //}
@ -38,5 +36,6 @@ func httpError(ctx *UserConnContext, err error) {
//if errors.Is(err, errs.ErrConnArgsErr) { //if errors.Is(err, errs.ErrConnArgsErr) {
// code = errs.ErrConnArgsErr.Code() // code = errs.ErrConnArgsErr.Code()
//} //}
ctx.ErrReturn(err.Error(), code) //ctx.ErrReturn(err.Error(), code)
apiresp.HttpError(ctx.RespWriter, err)
} }

View File

@ -5,15 +5,21 @@ import (
"net/http" "net/http"
) )
func HttpError(w http.ResponseWriter, err error) { func httpJson(w http.ResponseWriter, data any) {
data, err := json.Marshal(ParseError(err)) body, err := json.Marshal(data)
if err != nil { if err != nil {
panic(err) http.Error(w, "json marshal error: "+err.Error(), http.StatusInternalServerError)
return
} }
_ = data w.Header().Set("Content-Type", "application/json; charset=utf-8")
w.WriteHeader(http.StatusOK)
_, _ = w.Write(body)
}
func HttpError(w http.ResponseWriter, err error) {
httpJson(w, ParseError(err))
} }
func HttpSuccess(w http.ResponseWriter, data any) { func HttpSuccess(w http.ResponseWriter, data any) {
httpJson(w, ApiSuccess(data))
} }

View File

@ -89,15 +89,15 @@ func IsManagerUserID(opUserID string) bool {
return utils.IsContain(opUserID, config.Config.Manager.AppManagerUid) return utils.IsContain(opUserID, config.Config.Manager.AppManagerUid)
} }
func WsVerifyToken(token, userID, platformID string) error { func WsVerifyToken(token, userID, platformID string) error {
//claim, err := GetClaimFromToken(token) claim, err := GetClaimFromToken(token)
//if err != nil { if err != nil {
// return err return err
//} }
//if claim.UID != userID { if claim.UID != userID {
// return errs.ErrTokenInvalid.Wrap(fmt.Sprintf("token uid %s != userID %s", claim.UID, userID)) return errs.ErrTokenInvalid.Wrap(fmt.Sprintf("token uid %s != userID %s", claim.UID, userID))
//} }
//if claim.Platform != platformID { if claim.Platform != platformID {
// return errs.ErrInternalServer.Wrap(fmt.Sprintf("token platform %s != platformID %s", claim.Platform, platformID)) return errs.ErrTokenInvalid.Wrap(fmt.Sprintf("token platform %s != platformID %s", claim.Platform, platformID))
//} }
return nil return nil
} }