code2Session

收藏
我的收藏

接口说明

为了保障应用的数据安全,只能在开发者服务器使用 AppSecret。

开发者服务器不应该把会话密钥下发到小程序,也不应该对外提供该密钥。

如果小程序存在泄露 AppSecret 或会话密钥的风险,抖音开放平台将有可能下架该小程序,并暂停该小程序相关服务。


通过 login 接口获取到登录凭证后,开发者可以通过服务器发送请求的方式获取 session_key 和 openid。

登录凭证 code,anonymous_code 只能使用一次,非匿名需要 code,非匿名下的 anonymous_code 用于数据同步,匿名需要 anonymous_code。

基本信息

名称描述
HTTP URL
HTTP Method
POST
Scope
code2Session

请求头

名称字段类型是否必填示例描述
content-typeStringapplication/json
固定值"application/json"

请求参数

Body

名称字段类型是否必填示例描述
appidStringtt5da*********7910

小程序 ID。

获取路径:控制台 > 小程序详情 > 开发 >开发配置。

codeStringfb93de745*************eMuM8q4QQLeD

tt.login 返回的登录凭证

secretString188506c64********55a31de40625ec7

小程序的 App Secret。

获取路径:控制台 > 小程序详情 > 开发 >开发配置。

anonymous_codeString

login 接口返回的匿名登录凭证

请求示例

curl --location 'https://developer.toutiao.com/api/apps/v2/jscode2session' \
--header 'Content-Type: application/json' \
--data '{
  "appid": "tt5daf2b*****7910",
  "secret": "188506c******5a31de40625ec7",
  "anonymous_code": "",
  "code": "fb93de745*****xBa9DyeMuM8q4QQLeD"
}' 

响应参数

Body

名称字段类型是否必填示例描述
err_noInt640

错误码

err_tipsStringsuccess

错误码描述信息

log_idString

标识请求的唯一 ID,在接口异常时用于问题排查。

响应示例

正常响应示例

{
  "err_no": 0,
  "err_tips": "success",
  "log_id": "2024102117013250E8ABC6F2D070B681DC",
  "data": {
    "session_key": "hZy6t19VPjFqm********",
    "openid": "V3WvSshYq9******",
    "anonymous_openid": "",
    "unionid": "f7510d9ab***********"
  }
}

异常响应示例

{
  "err_no": 40015,
  "err_tips": "bad appid",
  "log_id": "2024102117113250E8ABC6F2D070R681DC",
  "data": {
    "session_key": "",
    "openid": "",
    "anonymous_openid": "",
    "unionid": ""
  }
}

错误码

http状态码错误码错误码描述排查建议
2000
请求成功
200-1
系统错误
20040014
未传必要参数,请检查
20040015
appid错误
20040017
secret错误
20040018
code错误
调用 tt.login 获取 code 时所用的 appId,和调用 code2Session 接口所传的 appid 不一致。
20040019
anonymous_code错误