H5 分享 Schema 生成示例

Python

from urllib.parse import urlencode

baseUrl = "snssdk1128://openplatform/share?"
param = {
    "client_key": CLIENT_KEY,
    "nonce_str": nonce_str,
    "timestamp": timestamp
    "signature": signature,
    "state": share_id,
    "share_type": "h5",
    "micro_app_info": json.dumps({
        "appId": "小程序appId",
        "appTitle": "小程序title",
        "description": "小程序描述语",
        "appUrl": "pages/movie",
    }),
    "image_path": "https://sf3-cdn-tos.douyinstatic.com/obj/douyin-open-static/tiktok.open/home/d_logo.png",
   "need_download": 1,
    "share_to_publish": 1,
    "hashtag_list": json.dumps(["hashtag1", "hashtag2", "hashtag3", "天气不错"])
}

final_url = baseUrl + urlencode(param)

Java

URIBuilder uri = new URIBuilder("snssdk1128://openplatform/share");
uri.addParameter("client_key", CLIENT_KEY);
uri.addParameter("state", share_id);
uri.addParameter("nonce_str", nonce_str);
uri.addParameter("timestamp", timestamp);
uri.addParameter("signature", signature);
uri.addParameter("share_type", "h5");
uri.addParameter("image_path", "https://sf3-cdn-tos.douyinstatic.com/obj/douyin-open-static/tiktok.open/home/d_logo.png");
uri.addParameter("need_download", "1");
uri.addParameter("share_to_publish", "0");

JSONArray hashTags = new JSONArray();
hashTags.put("hashtag1");
hashTags.put("hashtag2");
hashTags.put("hashtag3");
hashTags.put("天气不错JAVA");
uri.addParameter("hashtag_list", hashTags.toString());

JSONObject microAppInfo = new JSONObject();
microAppInfo.put("appId", "小程序appId");
microAppInfo.put("appTitle", "小程序title");
microAppInfo.put("description", "小程序描述语");
microAppInfo.put("appUrl", "pages/movie/index");
uri.addParameter("micro_app_info", microAppInfo.toString());

String url = uri.build().toString();

JavaScript

const url = new URL("snssdk1128://openplatform/share");
var query = url.searchParams
query.append("client_key", CLIENT_KEY);
query.append("state", share_id);
query.append("nonce_str", nonce_str)
query.append("timestamp", timestamp)
query.append("signature", signature)
query.append("share_type", "h5")
query.append("image_path", "https://sf3-cdn-tos.douyinstatic.com/obj/douyin-open-static/tiktok.open/home/d_logo.png")
query.append("share_to_publish", "0")
const hashTags = ["hashtag1", "hashtag2", "hashtag3", "天气不错"];
query.append("hashtag_list", JSON.stringify(hashTags))
query.append("micro_app_info", JSON.stringify({
    "appId": "小程序appid",
    "appTitle": "小程序title",
    "description": "小程序描述语",
    "appUrl": "pages/movie/index",
}))

JavaScript 工具包

1. script 引入

<script src="https://lf3-static.bytednsdoc.com/obj/eden-cn/fljpeh7hozbf/douyin_open/cdn/dy_open_util_v0.0.6.umd.js"></script>;

const schema = window.dy_open_util.serialize({
  share_type: "h5",

  client_key: "aw3ex33j6wjkn448",

  nonce_str: "Wm3WZYTPz0wzccnW",

  timestamp: `1659425157`,

  signature: "test_signature",
});

注意事项

  • 签名用的nonce_str和timestamp必须与schema中的nonce_str和timestamp相同。
  • 想获取用户分享结果,请获取share_id将其填写到state字段
诚邀您对本文档易读易用性进行评价
好用
不好用