8
0

Compare commits

..

No commits in common. "master" and "v1.2.76" have entirely different histories.

10 changed files with 1 additions and 302 deletions

View File

@ -1,10 +1,9 @@
package passport package passport
import ( import (
"strings"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk" "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests" "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
"strings"
) )
const ( const (
@ -85,20 +84,6 @@ func (c *Client) EditPhone(param EditPhoneRequestParam) (response string, err er
return editPhoneResponse.GetHttpContentString(), nil return editPhoneResponse.GetHttpContentString(), nil
} }
// EditPassword
// 修改/清除用户手机号phone 传空字符串即清除),成功返回 "ok"
func (c *Client) EditPassword(param EditPasswordRequestParam) (response string, err error) {
editPasswordRequest := CreateEditPasswordRequest(param)
editPasswordResponse := CreateEditPasswordResponse()
err = c.DoAction(editPasswordRequest, editPasswordResponse)
if err != nil && strings.Contains(err.Error(), "json Unmarshal:") {
return editPasswordResponse.GetHttpContentString(), nil
} else if err != nil {
return "", err
}
return editPasswordResponse.GetHttpContentString(), nil
}
// GetUserGameSign // GetUserGameSign
// 获取用户登录过的游戏大类 // 获取用户登录过的游戏大类
func (c *Client) GetUserGameSign(req *GetUserGameSignRequest) (response *GetUserGameSignResponse, err error) { func (c *Client) GetUserGameSign(req *GetUserGameSignRequest) (response *GetUserGameSignResponse, err error) {

View File

@ -274,24 +274,3 @@ func TestGetUserLogin(t *testing.T) {
fmt.Printf("raw: %s\n", resp.GetHttpContentString()) fmt.Printf("raw: %s\n", resp.GetHttpContentString())
fmt.Printf("data: %+v\n, %d", resp.Data, len(resp.Data)) fmt.Printf("data: %+v\n, %d", resp.Data, len(resp.Data))
} }
// 测试修改密码
func TestEditPassword(t *testing.T) {
client, err := NewClient()
if err != nil {
t.Error(err)
return
}
req := EditPasswordRequestParam{
UserName: "huangqzcs",
Newpwd: "123456789",
}
resp, err := client.EditPassword(req)
if err != nil {
t.Error(err)
return
}
t.Logf("edit phone result: %s", resp)
}

View File

@ -181,48 +181,3 @@ func CreateEditPhoneResponse() (response *EditPhoneResponse) {
} }
return return
} }
// EditPasswordRequestParam
// 修改密码相关
type EditPasswordRequestParam struct {
UserName string `position:"Body" field:"user_name"`
Newpwd string `position:"Body" field:"newpwd"`
}
type EditPasswordResponse struct {
*responses.BaseResponse
}
type EditPasswordRequest struct {
*requests.RpcRequest
UserName string `position:"Body" field:"user_name"`
Newpwd string `position:"Body" field:"newpwd"`
Action string `position:"Body" field:"action"`
Flag string `position:"Body" field:"flag"`
Time string `position:"Body" field:"time"`
}
// CreateEditPasswordRequest 修改用户密码
func CreateEditPasswordRequest(param EditPasswordRequestParam) (req *EditPasswordRequest) {
ts := time.Now().Unix()
sign := weeDongGetSign(ts)
req = &EditPasswordRequest{
RpcRequest: &requests.RpcRequest{},
Action: "edit_pwd",
Flag: sign,
Time: fmt.Sprintf("%v", ts),
UserName: param.UserName,
Newpwd: utils.Md5(param.Newpwd),
}
req.InitWithApiInfo(HOST, VERSION, "/weedong.php")
req.Method = requests.POST
return
}
func CreateEditPasswordResponse() (response *EditPasswordResponse) {
response = &EditPasswordResponse{
BaseResponse: &responses.BaseResponse{},
}
return
}

View File

@ -13,7 +13,6 @@ const (
ReplaceKeyUrl ReplaceKey = "${url}" // 链接 ReplaceKeyUrl ReplaceKey = "${url}" // 链接
ReplaceKeyUserName ReplaceKey = "${userName}" // 用户名 ReplaceKeyUserName ReplaceKey = "${userName}" // 用户名
ReplaceKeyDateTime ReplaceKey = "${dateTime}" // 年月日时分秒 ReplaceKeyDateTime ReplaceKey = "${dateTime}" // 年月日时分秒
ReplaceKeyPassWord ReplaceKey = "${passWord}" // 密码
) )
type Item struct { type Item struct {
@ -55,7 +54,6 @@ const (
TemplateTypeKFOrderAdditional SmsType = "kf_order_additional" // 客服工单完成 TemplateTypeKFOrderAdditional SmsType = "kf_order_additional" // 客服工单完成
TemplateTypeCancelTip SmsType = "cancel_tip" // 提交账号注销申请 TemplateTypeCancelTip SmsType = "cancel_tip" // 提交账号注销申请
TemplateTypeReverseCancel SmsType = "reverse_cancel" // 终止账号注销申请 TemplateTypeReverseCancel SmsType = "reverse_cancel" // 终止账号注销申请
TemplateTypeResetPassword SmsType = "reset_password" // 重置密码
) )
type SendSmsParam struct { type SendSmsParam struct {

View File

@ -53,13 +53,3 @@ func (c *Client) CreateRemoveBanRuleCacheReq(req *RemoveBanRuleCacheReq) (resp *
} }
return return
} }
// CreateCheckBatchReq 批量检查用户是否被封禁
func (c *Client) CreateCheckBatchReq(req *CheckBatchReq) (resp *CheckBatchResp, err error) {
resp = CreateCheckBatchResp()
err = c.DoAction(req, resp)
if err != nil {
return
}
return
}

View File

@ -158,47 +158,3 @@ func CreateRemoveBanRuleCacheResp() *RemoveBanRuleCacheResp {
BaseResponse: &responses.BaseResponse{}, BaseResponse: &responses.BaseResponse{},
} }
} }
// CheckBatchReq
// 批量检查用户是否被封禁(只读,按身份维度匹配现行封禁规则)
type CheckBatchReq struct {
*requests.JsonRequest
}
type CheckBatchReqParam struct {
UserNames []string `json:"user_names"` // 要检查的用户名列表
}
type CheckBatchItem struct {
UserName string `json:"user_name"` // 用户名
Ban bool `json:"ban"` // 是否被封禁
BanRuleId int64 `json:"ban_rule_id"` // 命中的封禁规则id(未命中为0)
BanEndTime string `json:"ban_end_time"` // 封禁结束时间(未命中为空)
}
type CheckBatchResp struct {
*responses.BaseResponse
Code int `json:"code"`
Msg string `json:"msg"`
Data struct {
List []CheckBatchItem `json:"list"`
} `json:"data"`
}
func CreateCheckBatchReq(param CheckBatchReqParam) *CheckBatchReq {
req := &CheckBatchReq{
&requests.JsonRequest{},
}
req.InitWithApiInfo(HOST, VERSION, "/api/user_ban/check_batch")
req.Method = requests.POST
marshal, _ := json.Marshal(param)
_ = json.Unmarshal(marshal, &req.JsonParams)
return req
}
func CreateCheckBatchResp() *CheckBatchResp {
return &CheckBatchResp{
BaseResponse: &responses.BaseResponse{},
}
}

View File

@ -1,42 +0,0 @@
package web
import (
"strings"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
)
const (
VERSION = "2020-01-01"
)
// HOST 官网 web 服务域名(带 "."SDK 不会再追加 .gaore.com
var HOST = requests.Host{
Default: "web.gaore.com",
}
type Client struct {
sdk.Client
}
func NewClient() (client *Client, err error) {
client = new(Client)
err = client.Init()
return
}
// ForceOut 清除玩家官网 web 登录 session返回远端原始响应
// 对齐老综合后台 GaoreSDK web->force_out
func (c *Client) ForceOut(userName string, ts int64) (response string, err error) {
req := CreateForceOutReq(userName, ts)
resp := CreateForceOutResp()
err = c.DoAction(req, resp)
if err != nil && strings.Contains(err.Error(), "json Unmarshal:") {
// 远端返回非 JSON如纯文本直接取原始响应
return resp.GetHttpContentString(), nil
} else if err != nil {
return "", err
}
return resp.GetHttpContentString(), nil
}

View File

@ -1,44 +0,0 @@
package web
import (
"fmt"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/utils"
)
// forceOutSignKey 老综合后台业务层计算 sign 用的固定盐
const forceOutSignKey = "user_session_20220505"
type ForceOutReq struct {
*requests.RpcRequest
}
type ForceOutResp struct {
*responses.BaseResponse
}
// CreateForceOutReq 创建官网强制下线请求
// POST web.gaore.com/web/users/force_outsign=md5(user_name+time+"user_session_20220505")
func CreateForceOutReq(userName string, ts int64) *ForceOutReq {
sign := utils.Md5(fmt.Sprintf("%s%d%s", userName, ts, forceOutSignKey))
req := &ForceOutReq{
RpcRequest: &requests.RpcRequest{},
}
req.InitWithApiInfo(HOST, VERSION, "/web/users/force_out")
req.FormParams = map[string]string{
"user_name": userName,
"time": fmt.Sprintf("%d", ts),
"sign": sign,
}
req.Method = requests.POST
return req
}
func CreateForceOutResp() *ForceOutResp {
return &ForceOutResp{
BaseResponse: &responses.BaseResponse{},
}
}

View File

@ -1,8 +1,6 @@
package www package www
import ( import (
"strings"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk" "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests" "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
) )
@ -27,13 +25,6 @@ type Client struct {
sdk.Client sdk.Client
} }
// NewClient 无凭证客户端(用于自带签名的表单接口,如 refreshUserSessionId
func NewClient() (client *Client, err error) {
client = &Client{}
err = client.Init()
return
}
func NewClientWithAccessKey(accesskey, secrect, source string) (client *Client, err error) { func NewClientWithAccessKey(accesskey, secrect, source string) (client *Client, err error) {
client = &Client{} client = &Client{}
err = client.InitWithAccessKey(accesskey, secrect, source) err = client.InitWithAccessKey(accesskey, secrect, source)
@ -51,17 +42,3 @@ func (c *Client) GetUserInfo(req *GetPwdRequest) (response *GetPwdResponse, err
err = c.DoAction(req, response) err = c.DoAction(req, response)
return return
} }
// RefreshUserSessionID 刷新用户 session清 www 登录态),返回远端原始响应
func (c *Client) RefreshUserSessionID(uname string) (response string, err error) {
req := CreateRefreshUserSessionIDReq(uname)
resp := CreateRefreshUserSessionIDResp()
err = c.DoAction(req, resp)
if err != nil && strings.Contains(err.Error(), "json Unmarshal:") {
// 远端返回非 JSON如纯文本直接取原始响应
return resp.GetHttpContentString(), nil
} else if err != nil {
return "", err
}
return resp.GetHttpContentString(), nil
}

View File

@ -1,55 +0,0 @@
package www
import (
"fmt"
"time"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/utils"
)
// 对齐老综合后台 GaoreSDK www->refreshUserSessionId 的固定 appid=20 验签
const (
refreshSessionAppID = "20"
refreshSessionAppKey = "yWpx3hWQHFhSnTCj#20#6KuRKuaAjLJ5sYRy"
)
// refreshSessionHost 老 PHP SDK 打的是 apisdk.gaore.com与本包默认 HOST(apisdk.9ooo.cn) 不同,
// 此处显式固定到 apisdk.gaore.com与老综合后台 1:1 对齐。
var refreshSessionHost = requests.Host{Default: "apisdk.gaore.com"}
type RefreshUserSessionIDReq struct {
*requests.RpcRequest
}
type RefreshUserSessionIDResp struct {
*responses.BaseResponse
}
// CreateRefreshUserSessionIDReq 刷新用户 www session使官网/9ooo 登录态失效)
// POST /user/sdk_passport.phpsign=md5(appkey+time)
func CreateRefreshUserSessionIDReq(uname string) *RefreshUserSessionIDReq {
ts := time.Now().Unix()
sign := utils.Md5(refreshSessionAppKey + fmt.Sprintf("%d", ts))
req := &RefreshUserSessionIDReq{
RpcRequest: &requests.RpcRequest{},
}
req.InitWithApiInfo(refreshSessionHost, VERSION, "/user/sdk_passport.php")
req.FormParams = map[string]string{
"appid": refreshSessionAppID,
"time": fmt.Sprintf("%d", ts),
"do": "refreshUserSessionId",
"uname": uname,
"sign": sign,
}
req.Method = requests.POST
return req
}
func CreateRefreshUserSessionIDResp() *RefreshUserSessionIDResp {
return &RefreshUserSessionIDResp{
BaseResponse: &responses.BaseResponse{},
}
}