package passport import ( "encoding/json" "fmt" "strings" "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests" "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses" ) // GetUserIdRequest 通过用户名查询 uid type GetUserIdRequest struct { *requests.RpcRequest } // GetUserIdResponse 返回 {"uid": "user_name", ...} 格式的 map type GetUserIdResponse struct { *responses.BaseResponse } // GetData 解析返回的 map,key 为 uid,value 为 user_name func (r *GetUserIdResponse) GetData() (map[string]string, error) { result := make(map[string]string) err := json.Unmarshal(r.GetHttpContentBytes(), &result) return result, err } // CreateGetUserIdRequest 构造请求,user_name 支持逗号分隔多个 func CreateGetUserIdRequest(userName string) *GetUserIdRequest { req := &GetUserIdRequest{RpcRequest: &requests.RpcRequest{}} req.InitWithApiInfo(HOST, VERSION, "/api/get_userid.php") if !strings.Contains(userName, ",") { userName = fmt.Sprintf("%v,%v", userName, userName) } req.QueryParams = map[string]string{ "user_name": userName, "type": "1", } req.Method = requests.GET return req } func CreateGetUserIdResponse() *GetUserIdResponse { return &GetUserIdResponse{BaseResponse: &responses.BaseResponse{}} }