47 lines
1.2 KiB
Go
47 lines
1.2 KiB
Go
|
|
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{}}
|
|||
|
|
}
|