up
This commit is contained in:
@@ -38,8 +38,11 @@ type MiniUserInfo struct {
|
|||||||
Gender int `json:"gender"`
|
Gender int `json:"gender"`
|
||||||
Language string `json:"language"`
|
Language string `json:"language"`
|
||||||
City string `json:"city"`
|
City string `json:"city"`
|
||||||
|
PhoneNumber string `json:"phoneNumber"`
|
||||||
|
PurePhoneNumber string `json:"purePhoneNumber"`
|
||||||
Province string `json:"province"`
|
Province string `json:"province"`
|
||||||
Country string `json:"country"`
|
Country string `json:"country"`
|
||||||
|
CountryCode string `json:"countryCode"`
|
||||||
AvatarURL string `json:"avatarUrl"`
|
AvatarURL string `json:"avatarUrl"`
|
||||||
UnionID string `json:"unionId"`
|
UnionID string `json:"unionId"`
|
||||||
Watermark struct {
|
Watermark struct {
|
||||||
|
|||||||
@@ -9,3 +9,23 @@ func TestSNSRetrieveToken(t *testing.T) {
|
|||||||
}
|
}
|
||||||
sugarLogger.Debug(result)
|
sugarLogger.Debug(result)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestSNSDecodeMiniProgramData(t *testing.T) {
|
||||||
|
// encryptedData := "rvV8ztGgNeOAafzydhMTASoilrSBlWcfWQ+GbEoiM+Ls72KJYKm/VYuvwahvoaGNC2EBG9sU6Bsy2Y4NsDww41DQw5aRstQqiI9yFIdvnB5YMwlTm/BN/Pt0LyL0POSouj6C2unUm3WFvOVYWtZtb8N2w0WIq1phnQ9YrJp8ynocw7KOEnRIpOUe1yyIWwT4zgi75fl87Wvku+s52WgjWw=="
|
||||||
|
// sessionKey := "xXrDRVNCjlq2hZ+ePouEPg=="
|
||||||
|
// iv := "Bl68JDy3I+pPN85sg7ckMg=="
|
||||||
|
|
||||||
|
encryptedData := "spUntKHbzUfj+xIJ5b+beEN3yJw6gGBZWo26c9xoW9n9dBkHWkHQ+a/gY/lDjHVPlZ60LGglUNlY0XDBFGuh7exCm05jws+Rev1dTJh9YzBUrGaStR7Hw/niXPj4aJsb7lQVMZ/mNIbcsaNUAWSEEzRCkPmrl6/gLqeRO0sWa83liFmp0dyGDaR5ChUoHAPHvsBSC6Xf2BkDnoCMPB7f1w=="
|
||||||
|
sessionKey := "xXrDRVNCjlq2hZ+ePouEPg=="
|
||||||
|
iv := "4UMSl6uqdontQIHl/i7ojg=="
|
||||||
|
|
||||||
|
// encryptedData := "C2R/vkmHAOhMq4/6KlrAWsYAGH6PHPTAs5jf2rJVF0keEMF1RzcbRBVDVpZVsy335OsDL1tZ7HDLyhKimFUCEP45fZDnlTp6FgV2zW4jY9tWqCqxUJ/M6o1FvlHk27FM3XIGXlxdXanvJ3KVdbtYwKxlwbJ9on6k5JL3w90Md3wE0IvQquBRTkWCfa5nJr38I3SR2VBFjyE+vnoFx2tqX31ZfY4zanr+ts1pno/VAfuXkpnnlvINir9HiEBnIPipLXkxcd/XlSPF2Osf66DSHj7WDHAqJKt4yKgEN+zt0cYT0kSZEGSJypRFGpsRAESzqmkUIE0JQW7WQANfc4W/5PpXEDXGYdv/FKt1LT3cqg0oHHjxdXojhbNR4T4dNPa+4rfbV2OcEl4m2CgwQLulb6uxEcBHD/hSUPuUSr5IHNpakKZrlDgBTyJgJs2679x+wCCHJRmLR77PgSGxh1D3rFq1lMpaZkahO6guSi1rdSQ6URwOgbudVM3WNwgwZ+Ga"
|
||||||
|
// sessionKey := "xXrDRVNCjlq2hZ+ePouEPg=="
|
||||||
|
// iv := "oi4qlhn1DjAKDedxHrDHNw=="
|
||||||
|
result, err := api.SNSDecodeMiniProgramData(encryptedData, sessionKey, iv)
|
||||||
|
if err != nil {
|
||||||
|
t.Fatal(err.Error())
|
||||||
|
}
|
||||||
|
sugarLogger.Debug(string(result))
|
||||||
|
sugarLogger.Debug(len(result))
|
||||||
|
}
|
||||||
|
|||||||
@@ -35,8 +35,9 @@ func AESCBCDecpryt(encryptedData, aesKey, iv []byte) (decryptedData []byte, err
|
|||||||
func PKCSUnPadding(originData []byte) []byte {
|
func PKCSUnPadding(originData []byte) []byte {
|
||||||
length := len(originData)
|
length := len(originData)
|
||||||
unpadding := int(originData[length-1])
|
unpadding := int(originData[length-1])
|
||||||
baseapi.SugarLogger.Debugf("PKCSUnPadding originData:%s, length:%d, unpadding:%d", string(originData), length, unpadding)
|
originData = originData[:(length - unpadding)]
|
||||||
return originData[:(length - unpadding)]
|
baseapi.SugarLogger.Debugf("PKCSUnPadding, length:%d, unpadding:%d", length, unpadding)
|
||||||
|
return originData
|
||||||
}
|
}
|
||||||
|
|
||||||
func PKCSPadding(ciphertext []byte, blockSize int) []byte {
|
func PKCSPadding(ciphertext []byte, blockSize int) []byte {
|
||||||
|
|||||||
@@ -3,8 +3,21 @@ package utils
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/baseapi"
|
||||||
|
"go.uber.org/zap"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
sugarLogger *zap.SugaredLogger
|
||||||
|
)
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
logger, _ := zap.NewDevelopment()
|
||||||
|
sugarLogger = logger.Sugar()
|
||||||
|
baseapi.Init(sugarLogger)
|
||||||
|
}
|
||||||
|
|
||||||
func TestDictKeysMan(t *testing.T) {
|
func TestDictKeysMan(t *testing.T) {
|
||||||
testData := map[string]interface{}{"k1": "v1", "k2": "v2"}
|
testData := map[string]interface{}{"k1": "v1", "k2": "v2"}
|
||||||
result1 := DictKeysMan(testData, []string{"k1"}, nil).(map[string]interface{})
|
result1 := DictKeysMan(testData, []string{"k1"}, nil).(map[string]interface{})
|
||||||
|
|||||||
Reference in New Issue
Block a user