京东商城创建商品详情

This commit is contained in:
苏尹岚
2020-05-14 14:08:16 +08:00
parent 5191ec3dfc
commit 116da2549e
2 changed files with 25 additions and 13 deletions

View File

@@ -14,9 +14,10 @@ import (
) )
const ( const (
prodURL = "https://api.jd.com/routerjson" prodURL = "https://api.jd.com/routerjson"
sigKey = "sign" sigKey = "sign"
JdsImgURL = "//img10.360buyimg.com/imgzone/" JdsImgURL = "//img10.360buyimg.com/imgzone/"
JdsImgDescURL = `<img src=" //img10.360buyimg.com/imgzone/jfs/t1/111969/32/6692/171733/5ebbb9daE5bedb5b2/38350dca19e2b9d2.jpg" style="width: auto; height: auto; max-width: 100%;">`
CreateCatType = "3" CreateCatType = "3"
UpdateCatType = "1" UpdateCatType = "1"
@@ -115,7 +116,7 @@ func (a *API) AccessAPI(action string, url string, bizParams map[string]interfac
return retVal, err 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 := make(map[string]interface{})
params["access_token"] = a.accessToken params["access_token"] = a.accessToken
params["app_key"] = a.appKey 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) params = utils.MergeMaps(params, bizParams)
signStr := a.signParam(params) signStr := a.signParam(params)
params["sign"] = signStr params["sign"] = signStr
fullURL := utils.GenerateGetURL(url, "", nil) fullURL := utils.GenerateGetURL(pURL, "", nil)
// rParam, _ := json.Marshal(bizParams)
// delete(params, "ware")
// delete(params, "skus")
// ware := bizParams["ware"].(string)
// skus := bizParams["skus"].(string)
// str := strings.ReplaceAll(string(rParam), "\\", "")
err = platformapi.AccessPlatformAPIWithRetry(a.client, err = platformapi.AccessPlatformAPIWithRetry(a.client,
func() *http.Request { 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("charset", "UTF-8")
request.Header.Set("Content-Type", "application/x-www-form-urlencoded") request.Header.Set("Content-Type", "application/x-www-form-urlencoded")
return request return request

View File

@@ -4,6 +4,7 @@ import (
"encoding/base64" "encoding/base64"
"encoding/json" "encoding/json"
"fmt" "fmt"
"strings"
"git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/baseapi/utils"
) )
@@ -189,8 +190,12 @@ func (a *API) CreateWare(createSkuParamWare *CreateSkuParamWare, createSkuParamS
Skus: createSkuParamSkus, Skus: createSkuParamSkus,
} }
cc, _ := json.Marshal(c) 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{}{ result, err := a.AccessAPI2("jingdong.ware.write.add", prodURL, map[string]interface{}{
"360buy_param_json": string(cc), "360buy_param_json": content,
}) })
if err == nil { if err == nil {
utils.Map2StructByJson(result["jingdong_ware_write_add_responce"].(map[string]interface{})["ware"], &createSkuResult, false) 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 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 //https://open.jd.com/home/home#/doc/api?apiCateId=137&apiId=906&apiName=jingdong.ept.feight.outapi.query
func (a *API) GetFeightMb() (err error) { func (a *API) GetFeightMb() (err error) {