BaseWeixinWXXUser

package
v5.2.21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 18, 2024 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BindExistUser

func BindExistUser(args *ArgsBindExistUser) (errCode string, err error)

func GetOpenIDByUserInfo

func GetOpenIDByUserInfo(args *ArgsGetOpenIDByUserInfo) (string, error)

GetOpenIDByUserInfo 从user数据中获取openid数据

func GetPhone

func GetPhone(args *ArgsGetPhone) (loginData LoginResponseClient, data LoginPhoneNumber, err error)

GetPhone 通过用户加密摘要,解密用户手机号 * 反馈结构体

{
    "phoneNumber": "13580006666",
    "purePhoneNumber": "13580006666",
    "countryCode": "86",
    "watermark":
    {
        "appid":"APPID",
        "timestamp": TIMESTAMP
    }
}

func LoginAndReg

func LoginAndReg(args *ArgsLoginAndReg) (userInfo UserCore.FieldsUserType, isNewUser bool, errCode string, err error)

LoginAndReg 登陆验证模块 API参考:https://developers.weixin.qq.com/miniprogram/dev/api/api-login.html 用于解决微信小程序登陆和匹配功能 完成后自动给与token

func LoginByPhone

func LoginByPhone(args *ArgsLoginByPhone) (data UserCore.FieldsUserType, errCode string, err error)

func LoginOrRegByPhone

func LoginOrRegByPhone(args *ArgsLoginOrRegByPhone) (data UserCore.FieldsUserType, isNewUser bool, errCode string, err error)

LoginOrRegByPhone Deprecated

Types

type ArgsBindExistUser

type ArgsBindExistUser struct {
	//用户ID
	UserID int64 `json:"userID" check:"id"`
	//是否覆盖不一致的用户
	// 如果发现微信被绑定到其他用户,则强制解绑
	NeedForceReplace bool `json:"needForceReplace"`
	//微信小程序数据
	Code          string             `json:"code"`
	UserData      DataWXUserInfoType `json:"userData"`
	EncryptedData string             `json:"encryptedData"`
	Signature     string             `json:"signature"`
	IV            string             `json:"iv"`
}

ArgsBindExistUser 绑定存在用户

type ArgsGetOpenIDByUserInfo

type ArgsGetOpenIDByUserInfo struct {
	//用户数据
	UserInfo UserCore.FieldsUserType
}

ArgsGetOpenIDByUserInfo 从user数据中获取openid数据参数

type ArgsGetPhone

type ArgsGetPhone struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//解码数据,通过login获取
	Code string `json:"code"`
	//包括敏感数据在内的完整用户信息的加密数据
	EncryptedData string `json:"encryptedData"`
	//加密算法的初始向量
	IV string `json:"iv"`
}

ArgsGetPhone 通过用户加密摘要,解密用户手机号参数

type ArgsLoginAndReg

type ArgsLoginAndReg struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//商户ID
	// 可以留空,则走平台微信小程序主体
	Code          string             `json:"code"`
	UserData      DataWXUserInfoType `json:"userData"`
	EncryptedData string             `json:"encryptedData"`
	Signature     string             `json:"signature"`
	IV            string             `json:"iv"`
	//推荐人手机号
	ReferrerNationCode string `db:"referrer_nation_code" json:"referrerNationCode" check:"nationCode" empty:"true"`
	ReferrerPhone      string `json:"referrerPhone" check:"phone" empty:"true"`
}

ArgsLoginAndReg 自动登陆和注册处理接口参数

type ArgsLoginByPhone

type ArgsLoginByPhone struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//解码数据,通过login获取
	Code string `json:"code"`
	//包括敏感数据在内的完整用户信息的加密数据
	EncryptedData string `json:"encryptedData"`
	//加密算法的初始向量
	IV string `json:"iv"`
	//推荐人手机号
	ReferrerNationCode string `db:"referrer_nation_code" json:"referrerNationCode" check:"nationCode" empty:"true"`
	ReferrerPhone      string `json:"referrerPhone" check:"phone" empty:"true"`
}

ArgsLoginByPhone 手机号授权登录

type ArgsLoginOrRegByPhone

type ArgsLoginOrRegByPhone struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//解码数据,通过login获取
	Code string `json:"code"`
	//包括敏感数据在内的完整用户信息的加密数据
	EncryptedData string `json:"encryptedData"`
	//加密算法的初始向量
	IV string `json:"iv"`
	//推荐人手机号
	ReferrerNationCode string `db:"referrer_nation_code" json:"referrerNationCode" check:"nationCode" empty:"true"`
	ReferrerPhone      string `json:"referrerPhone" check:"phone" empty:"true"`
}

ArgsLoginOrRegByPhone 使用手机号快速注册或登陆 该方法不会对手机号进行二次验证,会直接信任微信提供的资料 注意,必须启动系统开关才能执行,否则将拒绝创建 必须启动LoginNewOnlyPhone、LoginWeixinQuickPhone开关 Deprecated

type DataGetOpenIDByCode

type DataGetOpenIDByCode struct {
	//OpenID
	OpenID string `json:"openid"`
	//UnionID
	UnionID string `json:"unionid"`
}

DataGetOpenIDByCode 获取微信OpenID数据

func GetOpenIDByCode

func GetOpenIDByCode(orgID int64, code string) (result DataGetOpenIDByCode, errCode string, err error)

GetOpenIDByCode 获取微信OpenID

type DataWXUserInfoType

type DataWXUserInfoType struct {
	//昵称
	NickName string `json:"nickName"`
	//性别 1男 2女 0未知
	Gender int `json:"gender"`
	//语言 zh_CN
	Language string `json:"language"`
	//城市
	City string `json:"city"`
	//省份
	Province string `json:"province"`
	//国家编号
	Country string `json:"country"`
	//头像URL地址
	AvatarUrl string `json:"avatarUrl"`
}

DataWXUserInfoType 提交来的定义组参数

func (*DataWXUserInfoType) GetUserInfos

func (t *DataWXUserInfoType) GetUserInfos() (data CoreSQLConfig.FieldsConfigsType)

GetUserInfos 提交来的定义组 通过提交数据,解码用户信息结构体

type GetPaidUnionIDResponse

type GetPaidUnionIDResponse struct {
	BaseWeixinWXXClient.ResponseBase
	UnionID string `json:"unionid"`
}

GetPaidUnionIDResponse response data

func GetPaidUnionID

func GetPaidUnionID(client *BaseWeixinWXXClient.ClientType, openID, transactionID string) (*GetPaidUnionIDResponse, error)

GetPaidUnionID 用户支付完成后,通过微信支付订单号(transaction_id)获取该用户的 UnionId,

func GetPaidUnionIDWithMCH

func GetPaidUnionIDWithMCH(client *BaseWeixinWXXClient.ClientType, openID, outTradeNo, mchID string) (*GetPaidUnionIDResponse, error)

GetPaidUnionIDWithMCH 用户支付完成后,通过微信支付商户订单号和微信支付商户号(out_trade_no 及 mch_id)获取该用户的 UnionId,

type LoginPhoneNumber

type LoginPhoneNumber struct {
	PhoneNumber     string    `json:"phoneNumber"`
	PurePhoneNumber string    `json:"purePhoneNumber"`
	CountryCode     string    `json:"countryCode"`
	Watermark       Watermark `json:"watermark"`
}

PhoneNumber 解密后的用户手机号码信息

type LoginResponseClient

type LoginResponseClient struct {
	OpenID     string `json:"openid"`
	SessionKey string `json:"session_key"`
	// 用户在开放平台的唯一标识符
	// 只在满足一定条件的情况下返回
	UnionID string `json:"unionid"`
}

LoginResponse 返回给用户的数据

type Watermark

type Watermark struct {
	AppID     string `json:"appid"`
	Timestamp int64  `json:"timestamp"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL