mtwm token

This commit is contained in:
苏尹岚
2021-03-01 09:32:17 +08:00
parent 644770a6c2
commit 0d210d3558
5 changed files with 51 additions and 110 deletions

View File

@@ -21,21 +21,21 @@ func init() {
baseapi.Init(sugarLogger)
// sandbox
api = New("594ab45a-9a73-4a43-82b0-a64cbd55d883", "06692746f7224695ad4788ce340bc854", "d6b42a35a7414a5490d811654d745c84")
// api = New("594ab45a-9a73-4a43-82b0-a64cbd55d883", "06692746f7224695ad4788ce340bc854", "d6b42a35a7414a5490d811654d745c84")
// prod
// api = New("29afd5a8-f93f-4d4c-9fce-a7297340af59", "1dba76d40cac446ca500c0391a0b6c9d", "a88d031a1e7b462cb1579f12e97fe7f4")
api = New("29afd5a8-f93f-4d4c-9fce-a7297340af59", "1dba76d40cac446ca500c0391a0b6c9d", "a88d031a1e7b462cb1579f12e97fe7f4")
// 天天果园
// api = New("c45e6510-00ba-4be2-977e-bcb9c9792cc7", "5d5577a2506f41b8b4ec520ba83490f5", "0b01b9eeb15b41dab1c3d05d95c17a26")
//prod zs
// api = New("6f8d3290-0120-4ad7-8b53-943c67c84f3f", "789279b9ae814ba091ac52815566b54d", "5d668cd227644637bb0fd73ed8118ec8")
// const cookieValue = "YYJV3NHVBPHLD36FWP6F3EM5PTXJ2XZQS7U4HWRIDPP4IWGUKUIB4XG5N26CZRDLDF7PKOXBPD6BNTUAJLETLZOIWMCVFI3K6MYZIY4QBIXIMXYDJNUKFGJVQTN5356SAD6WPCIHWNQAG7DDMF7L7S3SHCT3RM3CQG7IJIPUQ3THS5UIUYWMKINM7ETUOQB7OBPOPZVCT3ZJY55243TDVXLO25PP4UYSPTTPMNQ7HPMWOJKJ3BJWGVHD243MXH7NZWW264TKN5UOCJBSSSOKD2QQII"
// const cookieValue = "OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3J7VMEGG2RGQEK6VMGIWEIL3X66ZYUZZOKKUUBKAWCWZPLF745R6MSYFJJ6EXUPLU4UGKXFQWEBUCQAMIOV7EVR4JGDPUMIPCVZVKBP5XQU32N7XTB6LGOP5RZQCH7DRHM"
// api.SetJdCookie(cookieValue)
const cookieValue = "OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3KKMSODEAJKHHXYAH3LVYHN7XCJDFDBTM7ELR5DAISLMYBDKZCAW7ME3IU6YX3SOLHZ7IXBXZ2XSFROMMSKNOYMLDABEV4JA57RIMIX22SNOBCLIFKREPFRN3RZVCFCVTSG7GXALZQUVXLWNYG35TDRA7JURR7VR3YVIP66T6G3SOARECZTEQ27GXNN5VHKRYKPJS72CSISRO5Y"
api.SetJdCookie(cookieValue)
// api.SetCookie("user", "VCQUVHVJI4ELNGFZOYMCDYDUSHEJMPXZRZXSNBRB4MVBNENP72REAAZR3R4SGDJ5ZI4FLYLLN5EGBBMTFCWHZVESIWBNLKZPLHWD6UIBTPXOF5IXM6AVA3V6TUNZD5UJS43AROJ2IRPZWEN5AGZYBUEGD3MSKKBKBSRP3DSEQXLITYNBLFZCHXCA7L4KGOSJRMM7R5IQP7QGLGRQB27AOE4YMLRJ3UPTZADPWJOYB3UZ7UZHLBVZRREEX647O3WQUU4BYXUOFZPIPRR77W3PQV543E")
api.SetCookieWithStr(`
shshshfpa=13b38d4a-8ba0-df12-0012-82d9a37fb835-1573795914; shshshfpb=abYp8Dq5JobRtp2pkZa7MbA%3D%3D; cart_uuid=1bd562b37ef02371; track=46099cdb-39fb-abe6-579e-ea9536a8cf9c; deviceid_pdj_jd=H5_DEV_92DD6F05-B71A-43D7-9790-529335C43AAC; mba_muid=1605755815875269445822; TrackerID=E6aNCj4mNlBVkq6eyFfWLvkbWl9DhdG-pRGVaQPbvt2ewCa2n0QM-p0mViOLv_Uem9pAWgbNZEeaJuaz4gARAW9rTj8PJK-3hmcbl9N9h1qg-DMYXvdwc3Iau-AMlWin29CojqE8YnUPMtlJUf2gnA; pt_token=y2wjxzef; pwdt_id=jd_5e10f2d70fb4c; h5_coords_obj=""; o2o_m_h5_sid=5cb8b4db-feaa-4b25-aa96-df96cf9dba6d; PDJ_H5_JDPIN=jd_5e10f2d70fb4c; PDJ_H5_MOBILE=181****0913; PDJ_H5_PIN=JD_222ea79f49b3211; navigation=[%22shop_jxcs2020%22]; shshshfp=34eda22ad0af63b76392daccd2d03f2e; cid=NWtRMjE2NndZMzc4N2hWNzMyOHFBNDcwMXdTMjEwMm9BMjE4M3JPNjkwNHJQODk2; 3AB9D23F7A4B3C9B=AK36FFYF5J6WMPRH7YTXMEX4CATHR6NAA3IQEESU2I33FEJRQ3DRLU4SZJYD2XGFLCFW43DHYP5HQKOMR4EFQSLKLA; __jdu=1591327001141529223150; __jdv=27966078|direct|-|none|-|1606900892557; pt_key=app_openAAJfzzr6ADCQcdEYCKb4BH4DNh-9sVcgVB7nYveTS-J-x3tuin7otTCG7qTRTasxQdi-pr8mkFU; pt_pin=jd_5e10f2d70fb4c; sid=7fc3a18bc45c5766395cd2a8ad1c6daw; is_sz_old_version=false; language=zh_CN; TrackID=1a_Q7xLAd79K-ifyBFeTkWcSF5DEgCm9ISEjFoCF1VhbmI0XLzk-3Np5Wa0O0f0W2UZCX327iWisSzKkCasW_kqc4MqKSXDbOxk3w4AByhjM; pinId=qA40zQJfoxUJ0BznFrVelbV9-x-f3wj7; pin=jd_5e10f2d70fb4c; unick=jd_181600jgy; _tp=tPAwCz7dZ2wG9FcrXkvXEPcH%2FgU%2BK8r%2FxTPrJfx1wo8%3D; _pst=jd_5e10f2d70fb4c; __jda=191429163.1591327001141529223150.1591327001.1607907141.1607938587.81; _base_=YKH2KDFHMOZBLCUV7NSRBWQUJPBI7JIMU5R3EFJ5UDHJ5LCU7R2NILKK5UJ6GLA2RGYT464UKXAI5KK7PNC5B5UHJ2HVQ4ENFP57OC2NCIWTST4KDNCWZES6EV2TD5XDTCNE6YVKRXISVWNQHZDBO6QEKYXMXGPYGVEOCQCSG4SOQWCP5WPWO6EFS7HEHMRWVKBRVHB33TFD4AUHV3TOJD7MGBX53BNNP2E6MSSOORYGL5H2GYFRURR5ACFJ54GH7PTHFL22YL3C6ODFYFTWGV5UAWCX5C6J372TDCL6LDNEERERTGC3XZYHUWG3GYQCRBMGP7O2Q2MPVVQAQIWW3S2YBGSPJZVO3XPNMOJI6RFTJD5NXZUZMBDK4FVEVR2D
`)
// api.SetCookieWithStr(`
// shshshfpa=13b38d4a-8ba0-df12-0012-82d9a37fb835-1573795914; shshshfpb=abYp8Dq5JobRtp2pkZa7MbA%3D%3D; cart_uuid=1bd562b37ef02371; track=46099cdb-39fb-abe6-579e-ea9536a8cf9c; deviceid_pdj_jd=H5_DEV_92DD6F05-B71A-43D7-9790-529335C43AAC; mba_muid=1605755815875269445822; TrackerID=E6aNCj4mNlBVkq6eyFfWLvkbWl9DhdG-pRGVaQPbvt2ewCa2n0QM-p0mViOLv_Uem9pAWgbNZEeaJuaz4gARAW9rTj8PJK-3hmcbl9N9h1qg-DMYXvdwc3Iau-AMlWin29CojqE8YnUPMtlJUf2gnA; pt_token=y2wjxzef; pwdt_id=jd_5e10f2d70fb4c; h5_coords_obj=""; o2o_m_h5_sid=5cb8b4db-feaa-4b25-aa96-df96cf9dba6d; PDJ_H5_JDPIN=jd_5e10f2d70fb4c; PDJ_H5_MOBILE=181****0913; PDJ_H5_PIN=JD_222ea79f49b3211; navigation=[%22shop_jxcs2020%22]; shshshfp=34eda22ad0af63b76392daccd2d03f2e; cid=NWtRMjE2NndZMzc4N2hWNzMyOHFBNDcwMXdTMjEwMm9BMjE4M3JPNjkwNHJQODk2; 3AB9D23F7A4B3C9B=AK36FFYF5J6WMPRH7YTXMEX4CATHR6NAA3IQEESU2I33FEJRQ3DRLU4SZJYD2XGFLCFW43DHYP5HQKOMR4EFQSLKLA; __jdu=1591327001141529223150; __jdv=27966078|direct|-|none|-|1606900892557; pt_key=app_openAAJfzzr6ADCQcdEYCKb4BH4DNh-9sVcgVB7nYveTS-J-x3tuin7otTCG7qTRTasxQdi-pr8mkFU; pt_pin=jd_5e10f2d70fb4c; sid=7fc3a18bc45c5766395cd2a8ad1c6daw; is_sz_old_version=false; language=zh_CN; TrackID=1a_Q7xLAd79K-ifyBFeTkWcSF5DEgCm9ISEjFoCF1VhbmI0XLzk-3Np5Wa0O0f0W2UZCX327iWisSzKkCasW_kqc4MqKSXDbOxk3w4AByhjM; pinId=qA40zQJfoxUJ0BznFrVelbV9-x-f3wj7; pin=jd_5e10f2d70fb4c; unick=jd_181600jgy; _tp=tPAwCz7dZ2wG9FcrXkvXEPcH%2FgU%2BK8r%2FxTPrJfx1wo8%3D; _pst=jd_5e10f2d70fb4c; __jda=191429163.1591327001141529223150.1591327001.1607907141.1607938587.81; _base_=YKH2KDFHMOZBLCUV7NSRBWQUJPBI7JIMU5R3EFJ5UDHJ5LCU7R2NILKK5UJ6GLA2RGYT464UKXAI5KK7PNC5B5UHJ2HVQ4ENFP57OC2NCIWTST4KDNCWZES6EV2TD5XDTCNE6YVKRXISVWNQHZDBO6QEKYXMXGPYGVEOCQCSG4SOQWCP5WPWO6EFS7HEHMRWVKBRVHB33TFD4AUHV3TOJD7MGBX53BNNP2E6MSSOORYGL5H2GYFRURR5ACFJ54GH7PTHFL22YL3C6ODFYFTWGV5UAWCX5C6J372TDCL6LDNEERERTGC3XZYHUWG3GYQCRBMGP7O2Q2MPVVQAQIWW3S2YBGSPJZVO3XPNMOJI6RFTJD5NXZUZMBDK4FVEVR2D
// `)
}
func TestTest(t *testing.T) {

View File

@@ -120,70 +120,7 @@ func TestStoreUploadImgByURL(t *testing.T) {
func TestSaveQualify(t *testing.T) {
jsonStr := `
[
{
"qualifyUrl":"http://img30.360buyimg.com/vendersettle/jfs/t1/69834/24/6602/68812/5d4d35fdEaaf373c6/5c1c50e7bb6330e4.jpg",
"qualifyType":"25",
"qualifyExpireForever":0,
"qualifyExpireStart":"2017-09-07 00:00:00",
"qualifyName":"刘男",
"licenceType":"-1",
"qualifyNumber":"92330104MA28XPXH5G",
"qualifyAddress":"浙江省杭州市江干区八堡家园5排10号一楼102",
"licenceName":"杭州市江干区刘男便利店",
"econKind":"个体工商户",
"scope":"食品经营(凭有效许可证经营);零售:卷烟、雪茄烟(凭有效许可证经营);批发、零售:日用百货,五金。(依法须经批准的项目,经相关部门批准后方可开展经营活动)"
},
{
"qualifyUrl":"http://img30.360buyimg.com/vendersettle/jfs/t1/58554/26/7134/19343/5d4d3639E57b14138/bcce25e1eac11be8.jpg",
"qualifyType":"22",
"qualifyExpireForever":1,
"qualifyExpireStart":"2013-07-22 16:59:38",
"qualifyExpireEnd":"2033-07-22 16:59:50",
"qualifyOwner":"刘男",
"qualifyNumber":"420621198110303336"
},
{
"qualifyUrl":"",
"qualifyType":"33",
"qualifyExpireForever":1,
"qualifyExpireStart":"",
"qualifyExpireEnd":""
},
{
"qualifyUrl":"",
"qualifyType":"8",
"qualifyExpireForever":1,
"qualifyExpireStart":"",
"qualifyExpireEnd":""
},
{
"qualifyUrl":"",
"qualifyType":"9",
"qualifyExpireForever":1,
"qualifyExpireStart":"",
"qualifyExpireEnd":""
},
{
"qualifyUrl":"",
"qualifyType":"10",
"qualifyExpireForever":1,
"qualifyExpireStart":"",
"qualifyExpireEnd":""
},
{
"qualifyUrl":"",
"qualifyType":"29",
"qualifyExpireForever":1,
"qualifyExpireStart":"",
"qualifyExpireEnd":""
},
{
"qualifyUrl":"",
"qualifyType":"31",
"qualifyExpireForever":1,
"qualifyExpireStart":"",
"qualifyExpireEnd":""
}
{"qualifyUrl":"http://img30.360buyimg.com/vendersettle/jfs/t1/169610/5/8031/168819/60386ed6E3e1d3543/34b3856c9e4e1282.jpg","qualifyType":"25","qualifyExpireForever":0,"qualifyExpireStart":"2020-11-04+00:00:00","qualifyName":"左凤娟","licenceType":"-1","qualifyNumber":"92331002MA2HJU1Q0J","qualifyAddress":"浙江省台州市椒江区白云街道花园新村60号楼二单元101室车库自主申报","licenceName":"台州市椒江彤彤蔬菜经营部","econKind":"个体工商户","scope":"一般项目:小食杂店(三小行业);食用农产品零售(除依法须经批准的项目外,凭营业执照依法自主开展经营活动)。"},{"qualifyUrl":"http://img30.360buyimg.com/vendersettle/jfs/t1/154609/37/19742/6390/60386ed6E9caa7248/a25278c9d3b01428.jpg","qualifyType":"22","qualifyExpireForever":1,"qualifyExpireStart":"2012-02-22+00:00:00","qualifyExpireEnd":"2022-02-22+00:00:00","qualifyOwner":"左凤娟","qualifyNumber":"411481198912063324"}
]
`
var qualityList []*QualifyItem
@@ -191,7 +128,7 @@ func TestSaveQualify(t *testing.T) {
if err != nil {
t.Fatal(err)
}
err = api.SaveQualify("11902261", SaveQualifyActionTypeSave, qualityList)
err = api.SaveQualify("12085905", 0, qualityList)
if err != nil {
t.Fatal(err)
}

View File

@@ -226,41 +226,21 @@ func TestUploadImageNew(t *testing.T) {
//给定一个包含正整数、加(+)、减(-)、乘(*)、除(/)的算数表达式(括号除外),计算其结果。
//表达式仅包含非负整数,+ - */ 四种运算符和空格  。 整数除法仅保留整数部分。
func calculate(s string) int {
s = "+" + strings.ReplaceAll(s, " ", "")
count := map[string]int{
"+": 1,
"(": 1,
")": 1,
"-": 1,
}
s = strings.ReplaceAll(s, " ", "")
var str []string
mem := ""
for k, v := range s {
if _, ok := count[string(v)]; !ok {
mem = mem + string(v)
} else {
if mem != "" {
str = append(str, mem)
}
mem = ""
str = append(str, string(v))
}
if k == len(s)-1 {
str = append(str, mem)
}
}
changeNum := func(s string) int {
i, _ := strconv.Atoi(s)
return i
}
var ss []int
for k, v := range str {
switch v {
case "+":
ss = append(ss, changeNum(str[k+1]))
case "-":
ss = append(ss, -changeNum(str[k+1]))
for {
kr := strings.Index(s, ")")
if k == -1 {
break
}
kl := strings.LastIndex(s[:k], "(")
s = s[:kl]+
}
sum := 0
for _, v := range ss {

View File

@@ -236,18 +236,34 @@ func (a *API) GetAccessToken(code string) (retVal interface{}, err error) {
return retVal, err
}
func (a *API) GetAccessToken2(appPoiCode string) (retVal interface{}, err error) {
retVal, err = a.AccessAPI2("oauth/authorize", true, map[string]interface{}{
"response_type": "token",
"app_poi_code": appPoiCode,
}, "access_token", "")
return retVal, err
type TokenResult struct {
Status int `json:"status"`
State interface{} `json:"state"`
Message string `json:"message"`
AccessToken string `json:"access_token"`
ExpiresIn int `json:"expires_in"`
RefreshToken string `json:"refresh_token"`
ReExpiresIn int `json:"re_expires_in"`
}
func (a *API) RefreshAccessToken(token string) (retVal interface{}, err error) {
retVal, err = a.AccessAPI2("oauth/token", false, map[string]interface{}{
func (a *API) GetAccessToken2(appPoiCode string) (result *TokenResult, err error) {
retVal, err := a.AccessAPI2("oauth/authorize", true, map[string]interface{}{
"response_type": "token",
"app_poi_code": appPoiCode,
}, "", "")
if err == nil {
utils.Map2StructByJson(retVal, &result, false)
}
return result, err
}
func (a *API) RefreshAccessToken(token string) (result *TokenResult, err error) {
retVal, err := a.AccessAPI2("oauth/token", false, map[string]interface{}{
"grant_type": "refresh_token",
"refresh_token": token,
}, "access_token", "")
return retVal, err
}, "", "")
if err == nil {
utils.Map2StructByJson(retVal, &result, false)
}
return result, err
}

View File

@@ -63,3 +63,11 @@ func TestGetAccessToken2(t *testing.T) {
}
t.Log(utils.Format4Output(result, false))
}
func TestRefreshAccessToken(t *testing.T) {
result, err := api.RefreshAccessToken("refresh_token_gVyfEOya1mIpVE1pkntLrw") //refresh_token_pLG7Jw7g9mu7oOzNSuJIUg
if err != nil {
t.Fatal(err)
}
t.Log(utils.Format4Output(result, false))
}