×

如何获取京东商品详情API的AppKey、AppSecret、AccessToken?

知名用户18007905473 知名用户18007905473 发表于2026-04-02 14:00:08 浏览5 评论0

抢沙发发表评论

获取京东商品详情 API 的 AppKey、AppSecret、AccessToken 分三大步:注册开发者 → 创建应用 → 申请权限 → 获取 Token。下面是完整、可落地的官方流程(2026 最新)。

一、注册京东开放平台账号(获取开发者身份)

  1. 打开 开放平台

    o0b.cn/anzexi

  2. 右上角 登录 / 注册 → 用京东商城账号登录(没有就注册)

  3. 进入 开发者中心 → 完成 实名认证

    • 个人:身份证正反面、人脸验证(1–2 小时审核)

    • 企业:营业执照、法人信息(1–3 工作日)


二、创建应用(拿到 AppKey & AppSecret)

  1. 登录 → 进入 开发者中心 → 应用管理 → 创建新应用

  2. 填写信息(个人测试可简化):

    • 个人测试随便填一个 https 地址(如 https://www.baidu.com

    • 应用名称:如「商品数据工具」(唯一即可)

    • 应用类型:选 工具应用 / 电商工具(个人测试)

    • 应用描述:简单写用途(如 “商品详情查询、价格监控”)

    • 授权回调地址(必填):

    • 图标:可不上传

  3. 提交 → 等待审核(10 分钟~1 天,个人应用很快)

✅ 应用审核通过后:获取 AppKey & AppSecret

  1. 进入 我的应用 → 对应应用 → 应用详情 / 密钥管理

  2. 复制:

    • AppKey(应用 ID)

    • AppSecret(密钥,严格保密


三、申请「商品详情 API」权限(必须)

  1. 应用管理 → 接口权限管理 / API 权限

  2. 添加权限 → 搜索:

    • 商家接口(JOS):jingdong.item.read.get(商品详情)

    • 联盟接口:jd.union.open.goods.detail.query

  3. 填写 用途说明(如 “商品信息查询、价格监控、非商用”)

  4. 提交 → 等待审核(1–3 工作日

没有权限会报错:403 无权限 / sub_code:isv.permission-denied

四、获取 AccessToken(两种方式)

京东分 商家 JOS 接口(需店铺授权)和 联盟接口(无需店铺授权)。

方式 A:京东联盟接口(推荐个人 / 比价 / 选品)

无需店铺授权,直接用 AppKey+AppSecret 获取 Token

Python 代码(直接运行)

python
运行
import requestsimport hashlibimport time

APP_KEY = "你的AppKey"APP_SECRET = "你的AppSecret"API_URL = "https://api.jd.com/routerjson"def get_access_token():
    params = {
        "method": "jd.union.open.token.get",
        "app_key": APP_KEY,
        "timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),
        "format": "json",
        "v": "2.0",
        "grant_type": "client_credentials"
    }
    # 签名
    sorted_params = sorted(params.items())
    sign_src = APP_SECRET + "".join(f"{k}{v}" for k, v in sorted_params) + APP_SECRET
    params["sign"] = hashlib.md5(sign_src.encode()).hexdigest().upper()

    resp = requests.post(API_URL, data=params)
    result = resp.json()
    # 解析
    try:
        token = result["jd_union_open_token_get_response"]["result"]["token"]
        return token  # 有效期24小时
    except:
        return "获取失败:" + str(result)if __name__ == "__main__":
    print("Access Token:", get_access_token())

方式 B:商家 JOS 接口(需店铺授权,ERP / 商家用)

必须店铺授权(OAuth2.0 授权码模式)
  1. 构造授权 URL(浏览器打开)

plaintext
https://oauth.jd.com/oauth/authorize?
response_type=code&
client_id=你的AppKey&
redirect_uri=你的回调地址&
scope=item_read
  1. 用店铺账号 授权 → 跳转回调地址,拿到 code
  2. 用 code 换 AccessToken
python
运行
def get_token_by_code(code):
    url = "https://oauth.jd.com/oauth/token"
    data = {
        "grant_type": "authorization_code",
        "code": code,
        "client_id": APP_KEY,
        "client_secret": APP_SECRET,
        "redirect_uri": "你的回调地址"
    }
    resp = requests.post(url, data=data)
    return resp.json()  # 返回access_token、expires_in、refresh_token

五、三要素汇总(调用必备)

  • AppKey:创建应用后自动生成

  • AppSecret:创建应用后自动生成(保密

  • AccessToken

    • 联盟:client_credentials 模式(24 小时)

    • 商家:OAuth 授权码(30 天,需 refresh)


六、常见问题

  1. 应用审核不通过
    • 名称 / 描述太随意 → 写清楚用途

    • 回调地址不是 https → 必须 https

  2. 权限申请被拒
    • 用途写清楚:仅用于商品详情查询、价格监控、非商用

  3. Token 过期
    • 联盟:每 23 小时 自动刷新一次

    • 商家:用 refresh_token 续期


群贤毕至

访客