You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
806 B

package jpush
import (
"encoding/json"
"errors"
)
const verificationUrl = "https://api.verification.jpush.cn"
type loginTokenVerify struct {
Id int64 `json:"id"`
Code int `json:"code"`
Content string `json:"content"`
ExID string `json:"exID"`
Phone string `json:"phone"`
}
// GetPhone @Title 获取手机号
func GetPhone(token string) (phone string, err error) {
resByte, err := exec(verificationUrl, "/v1/web/loginTokenVerify", map[string]string{
"loginToken": token,
})
if err != nil {
return
}
var res loginTokenVerify
if err = json.Unmarshal(resByte, &res); err != nil {
return
}
if res.Code == 8000 {
bytes, err := decrypt(res.Phone)
if err != nil {
return phone, err
}
phone = string(bytes)
} else {
err = errors.New(res.Content)
}
return
}