From 116da2549e396fc1eaad77ba75520b1ed5aa3794 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Thu, 14 May 2020 14:08:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=AC=E4=B8=9C=E5=95=86=E5=9F=8E=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E5=95=86=E5=93=81=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- platformapi/jdshopapi/jdshopapi.go | 19 +++++++------------ platformapi/jdshopapi/sku.go | 19 ++++++++++++++++++- 2 files changed, 25 insertions(+), 13 deletions(-) diff --git a/platformapi/jdshopapi/jdshopapi.go b/platformapi/jdshopapi/jdshopapi.go index c1d856e9..bf7053a0 100644 --- a/platformapi/jdshopapi/jdshopapi.go +++ b/platformapi/jdshopapi/jdshopapi.go @@ -14,9 +14,10 @@ import ( ) const ( - prodURL = "https://api.jd.com/routerjson" - sigKey = "sign" - JdsImgURL = "//img10.360buyimg.com/imgzone/" + prodURL = "https://api.jd.com/routerjson" + sigKey = "sign" + JdsImgURL = "//img10.360buyimg.com/imgzone/" + JdsImgDescURL = `` CreateCatType = "3" UpdateCatType = "1" @@ -115,7 +116,7 @@ func (a *API) AccessAPI(action string, url string, bizParams map[string]interfac return retVal, err } -func (a *API) AccessAPI2(action string, url string, bizParams map[string]interface{}) (retVal map[string]interface{}, err error) { +func (a *API) AccessAPI2(action string, pURL string, bizParams map[string]interface{}) (retVal map[string]interface{}, err error) { params := make(map[string]interface{}) params["access_token"] = a.accessToken params["app_key"] = a.appKey @@ -125,16 +126,10 @@ func (a *API) AccessAPI2(action string, url string, bizParams map[string]interfa params = utils.MergeMaps(params, bizParams) signStr := a.signParam(params) params["sign"] = signStr - fullURL := utils.GenerateGetURL(url, "", nil) - // rParam, _ := json.Marshal(bizParams) - // delete(params, "ware") - // delete(params, "skus") - // ware := bizParams["ware"].(string) - // skus := bizParams["skus"].(string) - // str := strings.ReplaceAll(string(rParam), "\\", "") + fullURL := utils.GenerateGetURL(pURL, "", nil) err = platformapi.AccessPlatformAPIWithRetry(a.client, func() *http.Request { - request, _ := http.NewRequest(http.MethodPost, fullURL, strings.NewReader(utils.URLQueryEscape(utils.Map2URLValues(params).Encode()))) + request, _ := http.NewRequest(http.MethodPost, fullURL, strings.NewReader(utils.Map2URLValues(params).Encode())) request.Header.Set("charset", "UTF-8") request.Header.Set("Content-Type", "application/x-www-form-urlencoded") return request diff --git a/platformapi/jdshopapi/sku.go b/platformapi/jdshopapi/sku.go index 29230d75..1c9383c0 100644 --- a/platformapi/jdshopapi/sku.go +++ b/platformapi/jdshopapi/sku.go @@ -4,6 +4,7 @@ import ( "encoding/base64" "encoding/json" "fmt" + "strings" "git.rosy.net.cn/baseapi/utils" ) @@ -189,8 +190,12 @@ func (a *API) CreateWare(createSkuParamWare *CreateSkuParamWare, createSkuParamS Skus: createSkuParamSkus, } cc, _ := json.Marshal(c) + content := string(cc) + content = strings.Replace(content, "\\u003c", "<", -1) + content = strings.Replace(content, "\\u003e", ">", -1) + content = strings.Replace(content, "\\u0026", "&", -1) result, err := a.AccessAPI2("jingdong.ware.write.add", prodURL, map[string]interface{}{ - "360buy_param_json": string(cc), + "360buy_param_json": content, }) if err == nil { utils.Map2StructByJson(result["jingdong_ware_write_add_responce"].(map[string]interface{})["ware"], &createSkuResult, false) @@ -218,6 +223,18 @@ func (a *API) UploadPicture(imageData []byte, pictureCateID int, pictureName str return uploadPictureResult, err } +//京东商城查询图片 +//https://open.jd.com/home/home#/doc/api?apiCateId=61&apiId=230&apiName=jingdong.imgzone.picture.query +func (a *API) QueryPicture(pictureName string) (uploadPictureResult *UploadPictureResult, err error) { + result, err := a.AccessAPI("jingdong.imgzone.picture.query", prodURL, map[string]interface{}{ + "picture_name": pictureName, + }) + if err == nil { + utils.Map2StructByJson(result["jingdong_imgzone_picture_upload_responce"], &uploadPictureResult, false) + } + return uploadPictureResult, err +} + //查询运费模板 //https://open.jd.com/home/home#/doc/api?apiCateId=137&apiId=906&apiName=jingdong.ept.feight.outapi.query func (a *API) GetFeightMb() (err error) {