package dingdingapi import "git.rosy.net.cn/baseapi/utils" type QRCodeUserInfo struct { Nickname string `json:"nick"` OpenID string `json:"openid"` UnionID string `json:"unionid"` } func (a *API) GetUserInfoByCode(code string) (userInfo *QRCodeUserInfo, err error) { result, err := a.AccessAPI("sns/getuserinfo_bycode", nil, map[string]interface{}{ "tmp_auth_code": code, }) if err == nil { myUserInfo := result["user_info"].(map[string]interface{}) return &QRCodeUserInfo{ Nickname: utils.Interface2String(myUserInfo["nick"]), OpenID: utils.Interface2String(myUserInfo["openid"]), UnionID: utils.Interface2String(myUserInfo["unionid"]), }, nil } return nil, err }