CINXE.COM
<!DOCTYPE html><html><head><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1"/><meta charSet="UTF-8"/><meta name="format-detection" content="telephone=no"/><meta name="applicable-device" content="pc,mobile"/><meta property="og:image" content="https://cloudcache.tencent-cloud.com/open_proj/proj_qcloud_v2/gateway/shareicons/cloud.png"/><title data-react-helmet="true">实时音视频 用户鉴权-常见问题-文档中心-腾讯云</title><meta data-react-helmet="true" name="keywords" content="视频服务 实时音视频"/><meta data-react-helmet="true" name="description" content="概览"/><link rel="icon" href="//cloudcache.tencent-cloud.com/qcloud/favicon.ico" type="image/x-icon"/><script> document.domain = 'cloud.tencent.com' </script><link rel="stylesheet" href="//cloudcache.tencent-cloud.com/qcloud/ui/gateway/portal/css/global-202307041440.css?max_age=31536000&t=20191128"/><link rel="stylesheet" href="//cloudcache.tencent-cloud.com/open_proj/proj_qcloud_v2/gateway/portal/css/global-components.css?max_age=31536000&t=20180817"/><link data-react-helmet="true" rel="canonical" href="https://cloud.tencent.com/document/product/647/17275"/><link data-react-helmet="true" rel="stylesheet" href="//cloudcache.tencent-cloud.com/qcloud/ui/gateway/documentation/documentation-v4/css/pandect-202209201611.css"/><link data-react-helmet="true" rel="stylesheet" href="//cloudcache.tencent-cloud.com/open_proj/proj_qcloud_v2/gateway/documentation/documentation-v4/css/import-2-markdown-20219091610.css"/><link data-react-helmet="true" rel="stylesheet" href="//cloudcache.tencent-cloud.com/qcloud/ui/platform/documents/css/documents-202410121102.css"/><link data-react-helmet="true" id="J-qcd-sdk-link" rel="stylesheet" href="//qcloudimg.tencent-cloud.cn/static/document/tea-slate-sdk.v0.1.16-fix-v5.css"/><link data-react-helmet="true" rel="stylesheet" href="//cloudcache.tencent-cloud.com/qcloud/main/components/document-feedback/document-feedback.1067f5e58e.css"/><style data-react-helmet="true"> /* 新版导航与底部在详情页上的特殊处理,在需要处理的页面 body 元素上加上 fix-jssdk start */ @media screen and (max-width: 1240px) and (min-width: 769px) { .fix-jssdk .pls-m-nav { height: 56px; } .fix-jssdk .pls-m-nav-bar { position: fixed; left: 0; top: 0; right: 0; } } @media screen and (max-width: 1000px) and (min-width: 769px) { .fix-jssdk .pls-footer-visible-m { display: none !important; } } /* 新版导航与底部在详情页上的特殊处理 end */ .no-translate-tips { height: 72px; background: #F6FCFF; padding: 0 20px; font-size: 14px; color: #333; position: relative; display: flex; align-items: center; justify-content: space-between; border: 1px solid #00A4FF; margin: 20px 0 -2px; z-index: 100; } .no-translate-tips.fixed-top { border: none; margin: 0; } .no-translate-tips .close { cursor: pointer; } @media screen and (max-width: 768px) { .no-translate-tips { padding: 0 16px; } } </style><link rel="stylesheet" href="https://cloudcache.tencent-cloud.com/qcloud/doc/styles/document/app.e924a617.css"/><script src="https://tam.cdn-go.cn/aegis-sdk/latest/aegis.min.js"></script><script> if (window.Aegis) { var aegis = window.aegisIns = new Aegis({ id: "dWOw9fv7jg4XmVzQ09", pagePerformance: true, onError: true, ext1: '2qnDiOlvRz', pagePerformance: true, reportAssetSpeed: true, reportApiSpeed: true, beforeRequest: function (data) { // 过滤掉一些明确上报 var ignoreKeys = [ 'Script error', 'chrome-extension', 'qq.com', 'queryWeappQrcodeStatus', 'login/ajax/info', 'woa.com', 'trafficCollect.php', 'google', 'dscache', 'act-api', 'set_qc_cookie', 'opc.cloud.tencent.com', 'uc_gre_ad_buss', 'eb.xcj.pub' ]; var alarmMsg = [data.logs.url, data.logs.msg].join('|'); for (var i=0; i<ignoreKeys.length; i++) { if (alarmMsg.indexOf(ignoreKeys[i]) != -1) return false; } // 过滤掉爬虫和开发者工具环境 if (/bot|wechatdevtools|spider/i.test(navigator.userAgent)) { return false; } // 过滤掉堆栈里无js文件的 if (data.logs.level === '4' && data.logs.msg && data.logs.msg.indexOf('.js') === -1) { return false; } } }) } </script></head><body class="documents-details color-bg fix-jssdk"><div id="no-global-if-no-need"> <script> var shouldHideGlobalComponent = window !== top && /^cloud\.tencent\.(com|cn|com\.cn)$/.test(top.document.domain) && top.DisableIFrameOfficialHeaderAndFooter; if (shouldHideGlobalComponent) { var head = document.getElementsByTagName('head')[0]; var hideStyles = n="#navigationBar,#navigationBarM,#qcportal-kit-footer,.c-hero-bar,.J-qc-footer,.J-subHeader,.J-docSidebarSearch{display:none!important}@media only screen and (max-width: 768px){.doc-box .table-box {padding-top:20px!important}.c-hero-bar-tit {margin-top:10px}}.doc-aside{padding-top:18px!important}.doc-con.J-mainDetail{padding-top:16px}.documents-container {overflow-x: hidden !important;}.documents-details .rno-column-layout-aside {top: 57px !important;}.J-detailLayout {padding-top: 0 !important;}.J-docHead {top: 0 !important;position: relative !important;}.J-docHead .topbar-guide-nav {top: 0 !important;}"; var linkElement = document.createElement('link'); linkElement.setAttribute('rel', 'stylesheet'); linkElement.setAttribute('type', 'text/css'); linkElement.setAttribute('href', 'data:text/css;charset=UTF-8,' + encodeURIComponent(hideStyles)); head.appendChild(linkElement); } </script> </div><div><link id="qcportal-kit-style" rel="stylesheet" href="https://cloudcache.tencent-cloud.com/qcloud/portal/kit/full.f344ca603e99f2a3ac3a.css"></div><div><div id="qcportal-kit-topnav"><div role="navigation" id="navigationBar" data-type="cn_zh" class="pls-nav fixed"><div class="pls-nav-mod"><div class="pls-nav-top"><a class="pls-nav-top-logo" href="https://cloud.tencent.com" hotrep="hp.header.hp"><i>腾讯云</i></a><div class="pls-nav-list-wrap"><ul class="pls-nav-list"><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.act" href="https://cloud.tencent.com/act">最新活动<i class="pls-nav-tag hot"><span class="pls-nav-tag-text">HOT</span></i></a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.product" href="https://cloud.tencent.com/product">产品</a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.solution" href="https://cloud.tencent.com/solution">解决方案</a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.price" href="https://buy.cloud.tencent.com/pricing">定价</a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.ecenter" href="https://cloud.tencent.com/act/pro/center">企业中心</a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.market" href="https://market.cloud.tencent.com">云市场</a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.developer" href="https://cloud.tencent.com/landing/developer-ecology">开发者</a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.support" href="https://cloud.tencent.com/act/event/service-support">客户支持</a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.cooperate" href="https://cloud.tencent.com/landing/partner-ecology">合作与生态</a></li><li class="pls-nav-item" tabindex="-1"><a role="button" hotrep="hp.header.learn" href="https://cloud.tencent.com/about">了解腾讯云</a></li></ul></div><div class="pls-nav-top-operation"></div></div><section class="pls-nav-dropdown" style="visibility:hidden;height:0"><div style="height:0;transition:transform ease-in-out .2s, opacity ease-in-out .2s;opacity:0;transform:translate(0, -100%)"><a class="pls-nav-dropdown-close" hotrep="hp.header.close">关闭</a></div></section></div></div> <div id="navigationBarM" class="pls-m-nav"><div class="pls-m-nav-bar"><div class="pls-m-nav-bar-main"><a href="https://cloud.tencent.com/" class="pls-m-nav-logo"></a></div><div class="pls-m-nav-bar-extra"><a class="pls-m-nav-btn" aria-label="搜索"><i class="pls-m-nav-btn-icon search"></i></a><a class="pls-m-nav-btn profile" aria-label="用户"><i class="pls-m-nav-btn-icon user"></i></a><a class="pls-m-nav-btn" aria-label="菜单"><i class="pls-m-nav-btn-icon menu"><span></span><span></span><span></span></i></a></div></div><div class="pls-m-nav-dropdown search" style="display:none"><div class="pls-m-nav-search"><div class="pls-m-nav-search-bar"><input type="text" class="pls-m-nav-search-input" placeholder="请输入搜索的关键词" value=""/><a class="pls-m-nav-search-btn">搜索</a></div></div></div></div></div></div><div id="react-root" aegis-first-screen-timing="true"><div class="J-mainContent responsible documents-container" style="background-color:#fff"><div class="rno-column-layout J-pc-wrap"><div class="J-body-wrap layout-columns" style="position:relative"><div class="rno-column-layout-cont J-layoutCont rno-details-compact"><div class="J-docDetailSide rno-column-layout-aside" style="top:97px;transform:"><div class="rno-column-layout-aside-inner"><div class="rno-column-aside-hd-2 J-docDetailSideTit" style="margin-top:38px"><i class="rno-column-menu-icon J-productNavPopTrigger"></i><a href="/document/product/647" data-bypass-xhr="true" class="rno-column-aside-title-2">实时音视频</a><i class="rno-column-aside-menu-fold-2 J-productNavCollapseTrigger"></i></div><div class="rno-column-aside-bd-2 doc-aside-wrap J-sideScrollArea J-sideNavInnerBoxPc"></div></div></div><div class="rno-document-details-layout rno-document-head-topbar-layout J-detailLayout rno-toc-layout" style="margin-top:"><div class="rno-document-head J-docHead" style="left:auto;top:60px"><div class="topbar-guide-nav" style="position:fixed;width:100%;left:0;top:60px"><div class="topbar-guide-inner"><ul class="topbar-guide-link"><li><a hotrep="doc.topsearch.product" href="https://cloud.tencent.com/document/product">文档中心</a></li> <li><a hotrep="doc.topsearch.guide" href="https://cloud.tencent.com/guide">入门中心</a></li> <li><a hotrep="doc.topsearch.api" href="https://cloud.tencent.com/document/api">API 中心</a></li> <li><a hotrep="doc.topsearch.sdk" href="https://cloud.tencent.com/document/sdk">SDK 中心</a></li> <li><a hotrep="doc.topsearch.doc-center" class="J-myFeedback">我的反馈</a></li></ul><div class="topbar-guide-btn-2 J-searchTopbar"><a class="topbar-guide-btn-tips" href="https://cloud.tencent.com/document/product/855/112110">视频服务与安全产品捉虫活动邀您参加!><!-- --> <i>HOT</i></a><div class="topbar-guide-btn-2-inner" hotrep="doc.topsearch.searchbtn" style="text-align:right"><input value="" class="J-searchInput topbar-guide-btn-2-box" placeholder="搜索相关文档"/><div class="topbar-guide-btn-2-search" id="J-searchPanelActivateBtn"><i class="topbar-guide-btn-2-search-icon"></i></div></div></div></div></div></div><div class="rno-document-details-wrap"><div style="display:none"><div class="rno-search-mobile-bar J-subHeader"><a class="rno-search-mobile-menu J-phoneMenu"><i class="rno-search-mobile-menu-icon"></i></a><div class="rno-search-mobile-inner"><div class="rno-search-mobile-panel J-docSidebarSearchM"><div class="rno-search-mobile-wrap J-docSidebarSearchWrapper"><input type="text" readonly="" value="" class="rno-search-mobile-input J-docSidebarSearchInput" placeholder="搜索本产品内容"/><button class="rno-search-mobile-btn J-docSidebarSearchBtn">查询</button></div><div class="rno-4-hero-search-list-wrap" style="display:none"><ul class="rno-4-hero-search-list rno-scrollbar J-docSidebarSearchList"></ul><div class="rno-4-hero-search-list-all J-docSidebarSearchItemAll"><a href="https://cloud.tencent.com/search">查看全部搜索结果</a></div></div></div></div></div></div><div class="rno-document-details-cont J-mainDetail"><div style="padding:0"><div class="J-innerMain" data-hastoc="1"><div class="rno-header-crumbs-2"><div class="rno-header-crumbs-inner-2"><a href="/document/product" title="文档中心" data-bypass-xhr="true" hotrep="document.article.breadcrumb" class="rno-header-crumbs-link-2">文档中心</a><i class="rno-header-crumbs-icon-2">></i><a href="/document/product/647" title="实时音视频" hotrep="document.article.breadcrumb" class="rno-header-crumbs-link-2">实时音视频</a><i class="rno-header-crumbs-icon-2">></i><a href="/document/product/647/32231" title="常见问题" hotrep="document.article.breadcrumb" class="rno-header-crumbs-link-2">常见问题</a><i class="rno-header-crumbs-icon-2">></i><span class="rno-header-crumbs-link-2 active">用户鉴权</span></div></div><div class="J-markdown-box"><div class="rno-title-module J-mainTitle"><h1 class="rno-title-module-title">用户鉴权</h1><div class="rno-title-module-body"><p class="rno-title-module-date">最近更新时间:<!-- -->2024-10-25 15:39:51</p><div class="rno-title-module-operate"><a class="rno-title-module-btn J-download-pdf" href="https://main.qcloudimg.com/raw/document/product/pdf/647_32231_cn.pdf" target="_blank" hotrep="document.article.pdf"><i class="rno-title-module-pdf"></i></a><div class="J-docShareModal rno-title-module-btn share com-share-bubble-trigger c-triangle-align-start com-share-pc m-hidden" hotrep="document.share"><a class="J-docShareToggleBtn com-share-bubble-trigger-link com-opt-link" style="cursor:pointer"><i class="rno-title-module-share"></i></a><div class="c-bubble c-bubble-top com-share-bubble"><div class="c-bubble-inner"><ul class="com-share-bubble-opts"><li><span class="com-share-bubble-text"><i class="com-share-bubble-icon wechat"></i><span>微信扫一扫</span></span><div class="J-docShareQRCodeContainer com-share-bubble-code"><img src=""/></div></li><li><a class="J-docShareLink com-share-bubble-link" data-sharetype="qq" target="_blank" hotrep="document.share.qq" style="cursor:pointer"><i class="com-share-bubble-icon qq"></i><span>QQ</span></a></li><li><a class="J-docShareLink com-share-bubble-link" data-sharetype="weibo" target="_blank" hotrep="document.share.weibo" style="cursor:pointer"><i class="com-share-bubble-icon weibo"></i><span>新浪微博</span></a></li><li><div class="J-docShareCopyTipModal com-share-bubble-trigger"><a class="J-docShareCopySiteBtn com-share-bubble-link" style="cursor:pointer"><i class="com-share-bubble-icon link"></i><span>复制链接</span></a><div class="com-share-bubble c-bubble c-bubble-top com-share-bubble-msg"><div class="c-bubble-inner"><i class="icon"></i>链接复制成功</div></div></div></li></ul></div></div></div><a class="J-docFavoriteActBtn rno-title-module-btn" style="cursor:pointer"><i class="rno-title-module-fav"></i></a><a class="rno-title-module-btn fav J-myCollection" target="_blank"><span class="rno-title-module-text"><em>我的收藏</em></span></a></div></div></div><div class="rno-document-details-side"><div class="markdown-nav J-navContainer absolute" style="margin-left:0;top:179px"><h2 class="nav-title">本页目录:</h2><ul class="markdown-nav-list J-floatCategory"><li><a href="#UserSig" title="概览">概览</a></li><li><a href="#.E8.B0.83.E8.AF.95.E8.B7.91.E9.80.9A.E9.98.B6.E6.AE.B5.E5.A6.82.E4.BD.95.E8.AE.A1.E7.AE.97-UserSig.EF.BC.9F" title="在调试阶段如何计算 UserSig?">在调试阶段如何计算 UserSig?</a><ul class="tea-slate-sdk-toc-list no-border"><li><a href="#.E5.AE.A2.E6.88.B7.E7.AB.AF.E7.A4.BA.E4.BE.8B.E4.BB.A3.E7.A0.81.E8.AE.A1.E7.AE.97-UserSig" title="客户端计算 UserSig">客户端计算 UserSig</a></li><li><a href="#console" title="控制台获取 UserSig">控制台获取 UserSig</a></li></ul></li><li><a href="#formal" title="在正式运行阶段如何计算 UserSig?">在正式运行阶段如何计算 UserSig?</a></li></ul></div></div><div id="docArticleContent" class="doc-article-content"><div id="doc-slate-root"><div class="tea-editable rich-editable tse-editable" data-tslate-sdk-version="0.1.13" data-slate-editor="true" data-slate-node="value" contenteditable="false" zindex="-1" style="position:relative;outline:none;white-space:pre-wrap;word-wrap:break-word"><div class="anchor-element"><h2 data-slate-node="element" class="" id="UserSig"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">概览</span></span></span></h2></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">本文档主要介绍腾讯云实时音视频(TRTC)服务的两种鉴权方式,目前,腾讯云实时音视频(TRTC)、即时通信(IM)等服务都采用了 UserSig 的鉴权方式。UserSig 是腾讯云设计的一种安全保护签名,目的是为了阻止恶意攻击者盗用您的云服务使用权。如果您要使用这些基础云服务,就需要在 SDK 初始化或登录函数中提供 SDKAppID,UserID 和 UserSig 三个关键信息,具体含义如下:</span></span></span></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">SDKAppID 用于标识您的应用。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">UserID 用于标识您的用户。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">UserSig 则是基于前两者计算出的安全签名,它由 </span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">HMAC SHA256</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> 加密算法计算得出。只要攻击者不能伪造 UserSig,就无法盗用您的云服务流量。</span></span></span></span></div><div class="anchor-element"><h2 data-slate-node="element" class="" id=".E8.B0.83.E8.AF.95.E8.B7.91.E9.80.9A.E9.98.B6.E6.AE.B5.E5.A6.82.E4.BD.95.E8.AE.A1.E7.AE.97-UserSig.EF.BC.9F"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">在调试阶段如何计算 UserSig?</span></span></span></h2></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">如果您希望快速跑通 Demo,了解 TRTC SDK 相关能力,您可以通过 </span></span></span><a class="ref" href="#client" title="#client" target="_self" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">客户端示例代码</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> 和 </span></span></span><a class="ref" href="#console" title="#console" target="_self" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">控制台</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> 两种方法计算获取 UserSig,具体请参见以下介绍。</span></span></span></div><div class="tse-hint ban" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><b><span style="color:#F64041"><span data-slate-string="true">不安全:</span></span></b></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">注意,如下两种 UserSig 获取计算方案仅适用于调试,如果产品要正式上线,</span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">不推荐</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">采用这种方案,因为客户端代码(尤其是 Web 端)中的 SECRETKEY 很容易被反编译逆向破解。一旦您的密钥泄露,攻击者就可以盗用您的腾讯云流量。</span></span></span></div></div><div class="anchor-element"><h3 data-slate-node="element" class="" id=".E5.AE.A2.E6.88.B7.E7.AB.AF.E7.A4.BA.E4.BE.8B.E4.BB.A3.E7.A0.81.E8.AE.A1.E7.AE.97-UserSig"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">客户端计算 UserSig</span></span></span></h3></div><div class="anchor-element"><h4 data-slate-node="element" class="" id="client"><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">1. 获取 SDKAPPID 和密钥</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">:</span></span></span></h4></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">登录</span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">实时音视频控制台</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> > </span></span></span><a class="ref" href="https://console.cloud.tencent.com/trtc/app" title="https://console.cloud.tencent.com/trtc/app" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">应用管理</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">单击您需查看的 SDKAppID 对应的</span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">应用信息</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">,单击进入</span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">应用概览</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">点击SDK密钥查看</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">密钥,即可获取用于计算 UserSig 的加密密钥。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">单击</span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">复制密钥</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">,可将密钥拷贝到剪贴板中。</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><div class="element image inline-image" data-slate-node="element" data-slate-inline="true" data-slate-void="true"><div contenteditable="false" class="image-inner"><figure class="image-figure read-only"><div class="image-container" data-width="974" data-height="338" style="width:974px;height:338px"><div class="rc-image image-with-preview"><img alt="" class="rc-image-img" style="height:338px;width:974px" src="https://qcloudimg.tencent-cloud.cn/image/document/28ad14110439c4d62e54a0769557a777.png"/></div></div></figure></div><span data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></span></div><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="anchor-element"><h4 data-slate-node="element" class="" id="be77d919-c5ee-4ead-9fa8-379a635b0763"><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">2. 计算 UserSig:</span></b></span></span></h4></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">为了方便客户端使用,我们提供各平台计算 UserSig 的源码文件,您可直接下载使用:</span></span></span></div><div class="table-container readonly"><div class="table-inner"><table data-slate-node="element" class="readonly fixed"><colgroup contenteditable="false"><col width="12.5%"/><col width="12.5%"/><col width="12.5%"/><col width="12.5%"/><col width="12.5%"/><col width="12.5%"/><col width="12.5%"/><col width="12.5%"/></colgroup><tbody><tr data-slate-node="element" class=""><td data-slate-node="element" class="is-header selectable-area" style="background-color:#f5f7fa"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Android</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area" style="background-color:#f5f7fa"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">iOS</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area" style="background-color:#f5f7fa"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Web</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area" style="background-color:#f5f7fa"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">微信小程序</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area" style="background-color:#f5f7fa"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Windows(C++)</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area" style="background-color:#f5f7fa"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Windows(C#)</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area" style="background-color:#f5f7fa"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Flutter</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area" style="background-color:#f5f7fa"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Mac</span></span></span></div></td></tr><tr data-slate-node="element" class=""><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/LiteAVSDK/TRTC_Android/tree/main/TRTC-API-Example/Debug/src/main/java/com/tencent/trtc/debug/GenerateTestUserSig.java" target="_self" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/LiteAVSDK/TRTC_iOS/tree/main/TRTC-API-Example-OC/Debug/GenerateTestUserSig.h" target="_self" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/LiteAVSDK/TRTC_Web/blob/main/quick-demo-js/js/libs/generateTestUserSig.js" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/LiteAVSDK/Live_WXMini/blob/main/TRTCScenesDemo/TUICallKit-WX-Demo/debug/GenerateTestUserSig.js" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/LiteAVSDK/TRTC_Windows/blob/main/TRTC-API-Example-C%2B%2B/TRTC-API-Example-Qt/src/Util/defs.h" target="_self" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/LiteAVSDK/TRTC_Windows/blob/main/TRTC-API-Example-CSharp/TRTC-API-Example-CSharp/GenerateTestUserSig.cs" target="_self" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/LiteAVSDK/TRTC_Flutter/blob/master/TRTC-API-Example/lib/Debug/GenerateTestUserSig.dart" target="_self" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/LiteAVSDK/TRTC_Mac/tree/main/OCDemo/TRTCDemo/TRTC/GenerateTestUserSig.h" target="_self" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td></tr></tbody></table></div></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">示例代码如下(当然您也可以参考我们各产品的 Demo 工程,详见各产品的开发文档):</span></span></span></div><div data-slate-node="element" class="tse-tabs tse-tabs--dark"><div class="tse-tabs__bar" contenteditable="false"><div class="tse-tabs__bar-main"><div class="tse-tabs__list"><div class="tse-tabs__item is-active"><div class="tse-tabs__item-cont"><div class="tse-tabs__item-label">Android</div></div></div><div class="tse-tabs__item"><div class="tse-tabs__item-cont"><div class="tse-tabs__item-label">iOS</div></div></div><div class="tse-tabs__item"><div class="tse-tabs__item-cont"><div class="tse-tabs__item-label">Web</div></div></div><div class="tse-tabs__item"><div class="tse-tabs__item-cont"><div class="tse-tabs__item-label">微信小程序</div></div></div><div class="tse-tabs__item"><div class="tse-tabs__item-cont"><div class="tse-tabs__item-label">Window(C++)</div></div></div><div class="tse-tabs__item"><div class="tse-tabs__item-cont"><div class="tse-tabs__item-label">Window(C#)</div></div></div><div class="tse-tabs__item"><div class="tse-tabs__item-cont"><div class="tse-tabs__item-label">Flutter</div></div></div><div class="tse-tabs__item"><div class="tse-tabs__item-cont"><div class="tse-tabs__item-label">Mac</div></div></div></div></div></div><div data-slate-node="element" class="code-block-wrap active"><div contenteditable="false" class="code-block-toolbar"><div class="code-block-toolbar__item"><div class="code-block-toolbar__btn"><div class="code-block-toolbar__icon"><svg viewBox="0 0 16 16" fill="currentColor"><path d="M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div></div></div></div><div><pre class="language-java code-block"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step1: 导入源码文件</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">import</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token namespace"><span data-slate-string="true">com.xxx.xxx.</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token class-name"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token class-name"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">SDKAPPID </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> xxxxxx</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token class-name"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">SECRETKEY </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">"xxxxxx"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step3:根据 userID,生成 userSig</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token class-name"><span data-slate-string="true">String</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> userSig </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token class-name"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token function"><span data-slate-string="true">genTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">(</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">"userID"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">)</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div></pre></div></div><div data-slate-node="element" class="code-block-wrap"><div contenteditable="false" class="code-block-toolbar"><div class="code-block-toolbar__item"><div class="code-block-toolbar__btn"><div class="code-block-toolbar__icon"><svg viewBox="0 0 16 16" fill="currentColor"><path d="M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div></div></div></div><div><pre class="language-objectivec code-block"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step1: 导入头文件</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token macro"><span data-slate-string="true">#import "GenerateTestUserSig.h"</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step2: 填写上一步骤中获取到的 SDKAppID,SDK 密钥</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">[</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">GenerateTestUserSig setSDKAPPID</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">xxxxxx</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">]</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">[</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">GenerateTestUserSig setSECRETKEY</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">@"xxxxxx"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">]</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step3:根据 userID,生成 userSig</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">NSString </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">*</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">userSig </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">[</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">GenerateTestUserSig genTestUserSig</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">@"userID"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">]</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div></pre></div></div><div data-slate-node="element" class="code-block-wrap"><div contenteditable="false" class="code-block-toolbar"><div class="code-block-toolbar__item"><div class="code-block-toolbar__btn"><div class="code-block-toolbar__icon"><svg viewBox="0 0 16 16" fill="currentColor"><path d="M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div></div></div></div><div><pre class="language-javascript code-block"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step1: 导入模块</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true"><</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">script src</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">'js/libs/lib-generate-test-usersig.min.js'</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">></span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true"><</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">/</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">script</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">></span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true"><</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">script src</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">'js/libs/generateTestUserSig.js'</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">></span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true"><</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">/</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">script</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">></span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥、输入自定义的userID,生成 userSig</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">const</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">{</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">sdkAppId</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">,</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> userSig </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">}</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token function"><span data-slate-string="true">genTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">(</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">{</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token literal-property"><span data-slate-string="true">sdkAppId</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> xxxxxx</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">,</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token literal-property"><span data-slate-string="true">userId</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">'xxxxxx'</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">,</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token literal-property"><span data-slate-string="true">sdkSecretKey</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">'xxxxxx'</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">,</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">}</span></span></span></span></div></pre></div></div><div data-slate-node="element" class="code-block-wrap"><div contenteditable="false" class="code-block-toolbar"><div class="code-block-toolbar__item"><div class="code-block-toolbar__btn"><div class="code-block-toolbar__icon"><svg viewBox="0 0 16 16" fill="currentColor"><path d="M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div></div></div></div><div><pre class="language-javascript code-block"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step1: 导入模块</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">import</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">{</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> genTestUserSig </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">}</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">from</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">'GenerateTestUserSig'</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥、输入自定义的userID,生成 userSig</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">const</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">{</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">userSig </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">}</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token function"><span data-slate-string="true">genTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">(</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">{</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token literal-property"><span data-slate-string="true">sdkAppId</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> xx</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">,</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token literal-property"><span data-slate-string="true">userId</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">'xxxxxx'</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">,</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token literal-property"><span data-slate-string="true">sdkSecretKey</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">'xxxxxx'</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">}</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">)</span></span></span></span></div></pre></div></div><div data-slate-node="element" class="code-block-wrap"><div contenteditable="false" class="code-block-toolbar"><div class="code-block-toolbar__item"><div class="code-block-toolbar__btn"><div class="code-block-toolbar__icon"><svg viewBox="0 0 16 16" fill="currentColor"><path d="M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div></div></div></div><div><pre class="language-cpp code-block"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step1: 导入头文件</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token macro"><span data-slate-string="true">#include "GenerateTestUserSig.h"</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">const</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">int</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> SDKAPPID </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> xxxxxx</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">const</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">char</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">*</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> SECRETKEY </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">"xxxxxx"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step3:根据 userID,生成 userSig</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">const</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">char</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">*</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> userSig </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token class-name"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token double-colon"><span data-slate-string="true">::</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token function"><span data-slate-string="true">genTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">(</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">"userID"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">,</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> SDKAPPID</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">,</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> SECRETKEY</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">)</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div></pre></div></div><div data-slate-node="element" class="code-block-wrap"><div contenteditable="false" class="code-block-toolbar"><div class="code-block-toolbar__item"><div class="code-block-toolbar__btn"><div class="code-block-toolbar__icon"><svg viewBox="0 0 16 16" fill="currentColor"><path d="M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div></div></div></div><div><pre class="language-csharp code-block"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step1: 导入头文件</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">using</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token namespace"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step2: 填写上一步骤中获取到的 SDKAppID 和 SDK 密钥</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">GenerateTestUserSig</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">SDKAPPID </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> xxxxxx</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">GenerateTestUserSig</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">SECRETKEY </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">"xxxxxx"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step3:根据 userID,生成 userSig</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token class-name"><span data-slate-string="true">string</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> userSig </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> GenerateTestUserSig</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token function"><span data-slate-string="true">GetInstance</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">(</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">)</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token function"><span data-slate-string="true">GenTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">(</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">"userID"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">)</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div></pre></div></div><div data-slate-node="element" class="code-block-wrap"><div contenteditable="false" class="code-block-toolbar"><div class="code-block-toolbar__item"><div class="code-block-toolbar__btn"><div class="code-block-toolbar__icon"><svg viewBox="0 0 16 16" fill="currentColor"><path d="M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div></div></div></div><div><pre class="language-django code-block"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">//</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">Step1</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> 导入源码文件</span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token keyword"><span data-slate-string="true">import</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">'package:xxx/GenerateTestUserSig.dart'</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">//</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">Step2</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> 填写上一步骤中获取到的 </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">SDKAppID</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">,</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">SDK</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> 密钥</span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">SDKAPPID</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">xxxxxx</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">SECRETKEY</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">"xxxxxx"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">//</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">Step3</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">:根据 </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">userID</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">,生成 </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">userSig</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">String</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">userSig</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token variable"><span data-slate-string="true">GenerateTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">.</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token function"><span data-slate-string="true">genTestUserSig</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">(</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">"userID"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">)</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div></pre></div></div><div data-slate-node="element" class="code-block-wrap"><div contenteditable="false" class="code-block-toolbar"><div class="code-block-toolbar__item"><div class="code-block-toolbar__btn"><div class="code-block-toolbar__icon"><svg viewBox="0 0 16 16" fill="currentColor"><path d="M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div></div></div></div><div><pre class="language-objectivec code-block"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step1: 导入头文件</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token macro"><span data-slate-string="true">#import "GenerateTestUserSig.h"</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step2: 填写上一步骤中获取到的</span></span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true"> </span></span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">SDKAppID,SDK 密钥</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">[</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">GenerateTestUserSig setSDKAPPID</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">xxxxxx</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">]</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">[</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">GenerateTestUserSig setSECRETKEY</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">@"xxxxxx"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">]</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token comment"><span data-slate-string="true">// Step3:根据 userID,生成 userSig</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">NSString </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">*</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">userSig </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token operator"><span data-slate-string="true">=</span></span></span><span data-slate-leaf="true"><span data-slate-string="true"> </span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">[</span></span></span><span data-slate-leaf="true"><span data-slate-string="true">GenerateTestUserSig genTestUserSig</span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">:</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token string"><span data-slate-string="true">@"userID"</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">]</span></span></span><span data-slate-leaf="true"><span data-slate-leaf="true" class="prism-token token punctuation"><span data-slate-string="true">;</span></span></span></span></div></pre></div></div></div><div class="anchor-element"><h3 data-slate-node="element" class="" id="console"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">控制台获取 UserSig</span></span></span></h3></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">登录</span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">实时音视频控制台</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">,进入</span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">开发辅助</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> > </span></span></span><a class="ref" href="https://console.cloud.tencent.com/trtc/usersigtool" title="https://console.cloud.tencent.com/trtc/usersigtool" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">UserSig生成&校验</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">在签名(UserSig)生成工具下,选择对应的 SDKAppID 和 UserID。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ul"><span contenteditable="false" class="tse-ul-symbol"></span><span class="tse-ul-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">单击</span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><b><span data-slate-string="true">生成签名(UserSig)</span></b></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">,即可计算得到对应的 UserSig。</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span style="color:red"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></span><div class="element image inline-image" data-slate-node="element" data-slate-inline="true" data-slate-void="true"><div contenteditable="false" class="image-inner"><figure class="image-figure read-only"><div class="image-container" data-width="974" data-height="502" style="width:974px;height:502px"><div class="rc-image image-with-preview"><img alt="" class="rc-image-img" style="height:502px;width:974px" src="https://qcloudimg.tencent-cloud.cn/image/document/ebf02e0c558ffdd8a7d7d42b4b9d395c.png"/></div></div></figure></div><span data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></span></div><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="anchor-element"><h2 data-slate-node="element" class="" id="formal"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">在正式运行阶段如何计算 UserSig?</span></span></span></h2></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">业务正式运行阶段,TRTC 提供安全等级更高的服务端计算 UserSig 的方案,可以最大限度地保障计算 UserSig 用的密钥不被泄露,因为攻破一台服务器的难度要高于逆向一款 App。具体的实现流程如下:</span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><div class="element image inline-image" data-slate-node="element" data-slate-inline="true" data-slate-void="true"><div contenteditable="false" class="image-inner"><figure class="image-figure read-only"><div class="image-container" data-width="960" data-height="611" style="width:960px;height:611px"><div class="rc-image image-with-preview"><img alt="" class="rc-image-img" style="height:611px;width:960px" src="https://qcloudimg.tencent-cloud.cn/image/document/a17b8daa131b6f740c1b831fa3536aaf.png"/></div></div></figure></div><span data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></span></div><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div data-slate-node="element" class="tse-markdown-ol"><span contenteditable="false" class="tse-markdown-ol-order">1.<!-- --> </span><span class="tse-markdown-ol-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">您的 App 在调用 SDK 的初始化函数之前,首先要向您的服务器请求 UserSig。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ol"><span contenteditable="false" class="tse-markdown-ol-order">2.<!-- --> </span><span class="tse-markdown-ol-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">您的服务器根据 SDKAppID 和 UserID 计算 UserSig,计算源码见文档前半部分。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ol"><span contenteditable="false" class="tse-markdown-ol-order">3.<!-- --> </span><span class="tse-markdown-ol-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">服务器将计算好的 UserSig 返回给您的 App。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ol"><span contenteditable="false" class="tse-markdown-ol-order">4.<!-- --> </span><span class="tse-markdown-ol-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">您的 App 将获得的 UserSig 通过特定 API 传递给 SDK。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ol"><span contenteditable="false" class="tse-markdown-ol-order">5.<!-- --> </span><span class="tse-markdown-ol-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">SDK 将 </span></span></span><span data-slate-node="text"><span data-slate-leaf="true"><code><span data-slate-string="true">SDKAppID + UserID + UserSig</span></code></span></span><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true"> 提交给腾讯云服务器进行校验。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ol"><span contenteditable="false" class="tse-markdown-ol-order">6.<!-- --> </span><span class="tse-markdown-ol-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">腾讯云校验 UserSig,确认合法性。</span></span></span></span></div><div data-slate-node="element" class="tse-markdown-ol"><span contenteditable="false" class="tse-markdown-ol-order">7.<!-- --> </span><span class="tse-markdown-ol-content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">校验通过后,会向 TRTCSDK 提供实时音视频服务。</span></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="n" data-slate-length="0"><br/></span></span></span></div><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">为了简化您的实现过程,我们提供了多个语言版本的 UserSig 计算源代码及其示例:</span></span></span></div><div class="table-container readonly"><div class="table-inner"><table data-slate-node="element" class="readonly"><colgroup contenteditable="false"><col width="23%"/><col width="29%"/><col width="23%"/><col width="23%"/></colgroup><tbody><tr data-slate-node="element" class=""><td data-slate-node="element" class="is-header selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">语言版本</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">签名算法</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">源代码</span></span></span></div></td><td data-slate-node="element" class="is-header selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">使用示例</span></span></span></div></td></tr><tr data-slate-node="element" class=""><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Java</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">HMAC-SHA256</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-java/blob/master/src/main/java/com/tencentyun/TLSSigAPIv2.java" title="https://github.com/tencentyun/tls-sig-api-v2-java/blob/master/src/main/java/com/tencentyun/TLSSigAPIv2.java" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">genSig</span></span></span></span><span contenteditable="false"></span></a></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-java" title="https://github.com/tencentyun/tls-sig-api-v2-java" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-zero-width="z" data-slate-length="0"></span></span></span></div></td></tr><tr data-slate-node="element" class=""><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">GO</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">HMAC-SHA256</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-golang/blob/master/tencentyun/TLSSigAPI.go" title="https://github.com/tencentyun/tls-sig-api-v2-golang/blob/master/tencentyun/TLSSigAPI.go" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">GenSig</span></span></span></span><span contenteditable="false"></span></a></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-golang" title="https://github.com/tencentyun/tls-sig-api-v2-golang" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a></div></div></td></tr><tr data-slate-node="element" class=""><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">PHP</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">HMAC-SHA256</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-php/blob/master/src/TLSSigAPIv2.php" title="https://github.com/tencentyun/tls-sig-api-v2-php/blob/master/src/TLSSigAPIv2.php" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">genSig</span></span></span></span><span contenteditable="false"></span></a></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-php" title="https://github.com/tencentyun/tls-sig-api-v2-php" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a></div></div></td></tr><tr data-slate-node="element" class=""><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Node.js</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">HMAC-SHA256</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-node/blob/master/TLSSigAPIv2.js" title="https://github.com/tencentyun/tls-sig-api-v2-node/blob/master/TLSSigAPIv2.js" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">genSig</span></span></span></span><span contenteditable="false"></span></a></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-node" title="https://github.com/tencentyun/tls-sig-api-v2-node" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a></div></div></td></tr><tr data-slate-node="element" class=""><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Python</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">HMAC-SHA256</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-python/blob/master/TLSSigAPIv2.py" title="https://github.com/tencentyun/tls-sig-api-v2-python/blob/master/TLSSigAPIv2.py" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">genSig</span></span></span></span><span contenteditable="false"></span></a></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-python" title="https://github.com/tencentyun/tls-sig-api-v2-python" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a></div></div></td></tr><tr data-slate-node="element" class=""><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">C#</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">HMAC-SHA256</span></span></span></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-cs/blob/master/tls-sig-api-v2-cs/TLSSigAPIv2.cs" title="https://github.com/tencentyun/tls-sig-api-v2-cs/blob/master/tls-sig-api-v2-cs/TLSSigAPIv2.cs" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">GenSig</span></span></span></span><span contenteditable="false"></span></a></div></div></td><td data-slate-node="element" class="selectable-area"><div class="" data-slate-node="element"><div class="" data-slate-node="element"><a class="ref" href="https://github.com/tencentyun/tls-sig-api-v2-cs" title="https://github.com/tencentyun/tls-sig-api-v2-cs" target="_blank" data-slate-node="element" data-slate-inline="true"><span contenteditable="false"></span><span class="content"><span data-slate-node="text"><span data-slate-leaf="true"><span data-slate-string="true">Github</span></span></span></span><span contenteditable="false"></span></a></div></div></td></tr></tbody></table></div></div></div></div></div><script type="text/template" id="codeTemplate" data-type="code"> <div class="rno-code-wrap"> <div class="rno-code J-markdownCode"> <div class="rno-code-hd"> <ul class="rno-code-tab J-language"> <!--展示语言列表--> </ul> </div> <div class="rno-code-bd markdown-code-bd J-codeBox"> <div class="rno-code-toolbars J-codeToolbar"> <a data-bypass-xhr="1" class="rno-code-toolbars-copy J-copyContent"></a> <div class="code-dropdown code-dropdown-align-center J-copy-tips"> <div class="code-dropdown-inner"> <div class="code-dropdown-text">复制</div> </div> </div> <div class="code-dropdown code-dropdown-align-center J-copy-success"> <div class="code-dropdown-inner"> <div class="code-dropdown-text">复制成功</div> </div> </div> </div> </div> </div> </div> </script></div><div class="doc-pages J-docDetailPagination"><a href="/document/product/647/34399" class="prev J-docDetailPaginationPage" hotrep="document.detail.previous" title="上一篇: 应对防火墙限制相关">上一篇<!-- -->: <!-- -->应对防火墙限制相关</a><a href="/document/product/647/80459" class="next J-docDetailPaginationPage" hotrep="document.detail.next" title="下一篇: 房间与用户管理相关">下一篇<!-- -->: <!-- -->房间与用户管理相关</a></div><div id="document-feedback-container" class="document-feedback-container"></div><div class="J-relatedArticleLayout" data-title="实时音视频"></div><div class="J-featuredFeedbackLayout" style="margin-top:20px"></div></div></div></div></div></div></div></div></div></div><div id="J-viewLargeImageBox" data-mode="pc" class="zoom-mask" style="display:none;width:100%;height:100%"><div class="zoom-close"></div><div class="zoom-wrap"><img/></div></div><div class="qcc-footer-s footer-pc J-qc-footer" data-type="cn_zh"><div class="c-footer-inner"><div class="c-footer-blogroll-main"><nav class="c-footer-blogroll-links copyright"><span class="slide">Copyright © 2013<!-- -->-2024<!-- --> Tencent Cloud. All Rights Reserved.<span> 腾讯云 版权所有</span></span><br/><a href="https://www.beian.gov.cn/portal/registerSystemInfo?recordcode=11010802020287" target="_blank" hotrep="hp.footer.bottom.beian" class="slide slide-ct">京公网安备 11010802017518</a><a href="http://beian.miit.gov.cn" target="_blank" hotrep="hp.footer.bottom.miitbeian" class="slide slide-ct">粤B2-20090059-1</a></nav></div><div class="c-footer-blogroll-extra"><div class="c-footer-select J-qcRegionSelector"><a class="c-footer-select-trigger J-qcRegionTrigger"><i class="icon"></i>中国站</a><div class="c-footer-dropdown J-qcFooterRegionList"><ul class="c-footer-dropdown-menu"><li class="actived"><a class="J-qcRegionOption" data-region="cn_zh" hotrep="hp.footer.region.cn">中文</a></li><li><a class="J-qcRegionOption" data-region="intl" href="https://www.tencentcloud.com/">International</a></li></ul></div></div></div></div></div><div class="qc-scrollbar rno-scrollbar-tools rno-documents-tools J-qc-scrollbar"><div class="qc-scrollbar-inner rno-scrollbar-tools-inner"><div class="qc-scrollbar-item qc-scrollbar-document rno-scrollbar-tools-item rno-scrollbar-tools-document rno-scrollbar-tools-service gift-mod"><div class="qc-scrollbar-button qc-scrollbar-toggle is-active rno-scrollbar-tools-button rno-scrollbar-tools-toggle rno-documents-tools-gift hover J-btnDocFeedback" hotrep="hp.sidebar.document" style="border-color:#e1e8f0"><img class="rno-scrollbar-tools-icon" src="https://main.qcloudimg.com/raw/8cdc42f31161d060ae6c78e1acdcd562.svg" alt=""/><img class="rno-scrollbar-tools-icon-hover" src="https://main.qcloudimg.com/raw/30187ce8f5ed8903808e482cdca64b40.svg" alt=""/><span class="qc-scrollbar-button-desc rno-scrollbar-tools-button-desc">文档反馈</span></div><div class="c-bubble c-bubble-right J-guideTip" style="display:none"><div class="c-bubble-inner"><div class="bubble-icon"></div><div class="bubble-tit">鼠标选中内容,快速反馈问题</div><div class="bubble-text">选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。</div><div class="bubble-btns"><a class="bubble-link-left J-guideNotShowAgain">不再提示</a><a class="bubble-link-right J-guideKnown">好的,知道了</a></div></div></div></div><div class="qc-scrollbar-item qc-scrollbar-document rno-scrollbar-tools-item rno-scrollbar-tools-service rno-scrollbar-tools-document gift-mod J-gitMod"><div class="rno-scrollbar-tools-button rno-scrollbar-tools-toggle" hotrep="hp.sidebar.document" style="padding-top:12px;padding-bottom:12px;padding-left:0;padding-right:0;display:none"><img class="rno-scrollbar-tools-icon" src="https://main.qcloudimg.com/raw/07e6c1149bdbaa766dcd7c4e2b9a5886/gift-blue.svg" style="vertical-align:top" alt=""/></div><div class="rno-scrollbar-tools-button rno-scrollbar-tools-toggle rno-documents-tools-gift J-btnDocInvestigate" hotrep="hp.sidebar.document.act" style="background-color:#fff;border:"><img class="rno-scrollbar-tools-icon" src="https://main.qcloudimg.com/raw/07e6c1149bdbaa766dcd7c4e2b9a5886/gift-blue.svg" alt=""/><span class="qc-scrollbar-button-desc rno-scrollbar-tools-button-desc">文档活动</span></div><div class="J-hoverPanel" style="z-index:8;bottom:0;right:43px;padding-right:12px;position:absolute;display:none"><div class="rno-scrollbar-tools-bubble" style="position:static"><div class="rno-scrollbar-tools-bubble-inner"><div class="rno-scrollbar-tools-bubble-item"><a href="https://cloud.tencent.com/developer/article/1610407" hotrep="hp.sidebar.document.link1" target="_blank"><div class="rno-scrollbar-tools-bubble-head"><img class="rno-scrollbar-tools-bubble-icon" src="https://main.qcloudimg.com/raw/9674b05080ea616c61aabd5c9f7e7e0e.svg" alt=""/><img class="rno-scrollbar-tools-bubble-icon-hover" src="https://main.qcloudimg.com/raw/fe4d466f3ec44efd1ae62b6eee8c0b5f.svg" alt=""/><span class="rno-scrollbar-tools-bubble-title">文档“捉虫”活动</span></div><div class="rno-scrollbar-tools-bubble-desc">检视指定产品文档,发现和反馈有效问题,奖!</div></a></div><div class="rno-scrollbar-tools-bubble-item"><a href="https://cloud.tencent.com/developer/article/1630768" hotrep="hp.sidebar.document.link2" target="_blank"><div class="rno-scrollbar-tools-bubble-head"><img class="rno-scrollbar-tools-bubble-icon" src="https://main.qcloudimg.com/raw/bc8e0cd020e9b96a8e61319d2f145f15.svg" alt=""/><img class="rno-scrollbar-tools-bubble-icon-hover" src="https://main.qcloudimg.com/raw/d46e0544ea9b8962405e6b9febcbdaf5.svg" alt=""/><span class="rno-scrollbar-tools-bubble-title">API专项"捉虫"</span></div><div class="rno-scrollbar-tools-bubble-desc">反馈API文档问题,代金券、周边好礼奖不停!</div></a></div><div class="rno-scrollbar-tools-bubble-item"><a href="https://cloud.tencent.com/developer/article/1523112" hotrep="hp.sidebar.document.link3" target="_blank"><div class="rno-scrollbar-tools-bubble-head"><img class="rno-scrollbar-tools-bubble-icon" src="https://main.qcloudimg.com/raw/d5783f8d104e1d25a658df1685b087c2.svg" alt=""/><img class="rno-scrollbar-tools-bubble-icon-hover" src="https://main.qcloudimg.com/raw/bd063d4ae54dcf48a69edc3a822b26a9.svg" alt=""/><span class="rno-scrollbar-tools-bubble-title">文档建议,你提了吗</span></div><div class="rno-scrollbar-tools-bubble-desc">快来使用腾讯云产品文档,提出有效建议,奖!</div></a></div></div></div></div></div><div class="qc-scrollbar-item rno-scrollbar-tools-item rno-scrollbar-tools-service J-connectUsBlock"><a class="rno-scrollbar-tools-button rno-scrollbar-tools-toggle J-btnConnectUs" hotrep="hp.sidebar.connectus" title="联系我们" style="text-decoration:none"><img class="rno-scrollbar-tools-icon qc-scrollbar-icon" src="https://main.qcloudimg.com/raw/3bc4782fbfb8375d9a4e54e481298f82/message.svg" alt="message-icon"/><span class="rno-scrollbar-tools-button-desc qc-scrollbar-button-desc J-scrollbar-button-connect-us">联系我们</span></a><div class="J-expandPanel" style="z-index:6;bottom:0;right:43px;padding-right:12px;position:absolute;display:none"><div class="rno-scrollbar-tools-bubble" style="position:static"><div class="rno-scrollbar-tools-bubble-inner"><div class="rno-scrollbar-tools-bubble-item"><a class="J-presale-smartServiceLink" href="https://cloud.tencent.com/online-service?source=PRESALE&from=doc_647" target="_blank"><div class="rno-scrollbar-tools-bubble-head"><img class="rno-scrollbar-tools-bubble-icon " src="https://cloudcache.tencent-cloud.com/qcloud/portal/kit/images/pre-sales.44dccbb4.svg" alt="service-icon"/><img class="rno-scrollbar-tools-bubble-icon-hover" src="https://cloudcache.tencent-cloud.com/qcloud/portal/kit/images/pre-sales-hover.9b27e3e9.svg" alt="service-hover-icon"/><span class="rno-scrollbar-tools-bubble-title">售前咨询</span></div><div class="rno-scrollbar-tools-bubble-desc">专属客户经理在线解答,提供专业的上云方案</div></a></div><div class="rno-scrollbar-tools-bubble-item"><a class="J-smartServiceLink" href="https://cloud.tencent.com/act/event/Online_service?from=doc_647" target="_blank"><div class="rno-scrollbar-tools-bubble-head"><img class="rno-scrollbar-tools-bubble-icon " src="https://cloudcache.tencent-cloud.com/qcloud/portal/kit/images/message.ab26a8d5.svg" alt="service-icon"/><img class="rno-scrollbar-tools-bubble-icon-hover" src="https://cloudcache.tencent-cloud.com/qcloud/portal/kit/images/message-hover.93a6b104.svg" alt="service-hover-icon"/><span class="rno-scrollbar-tools-bubble-title">售后支持</span></div><div class="rno-scrollbar-tools-bubble-desc">7*24获取专业工程师的帮助,快速解决您的问题</div></a></div><div class="rno-scrollbar-tools-bubble-item"><div class="rno-scrollbar-tools-bubble-more"><a class="J-connectUsLink" href="https://cloud.tencent.com/act/event/connect-service?from=doc_647" target="_blank">查看更多联系、反馈方式 ></a></div></div></div></div></div><div class="rno-scrollbar-tools-bubble-m J-expandPanelM" style="z-index:6;top:-126px;right:4px;display:none;background:white"><div class="rno-scrollbar-tools-bubble-m-inner"><a class="rno-scrollbar-tools-bubble-m-item J-smartServiceLink" href="https://cloud.tencent.com/act/event/Online_service" target="_blank"><div class="rno-scrollbar-tools-bubble-m-head"><img class="rno-scrollbar-tools-bubble-icon-m" src="https://main.qcloudimg.com/raw/9c5843fbbc8e89caa61a727b76e50303/service.svg" alt=""/><span class="rno-scrollbar-tools-bubble-m-title">在线客服</span></div><div class="rno-scrollbar-tools-bubble-m-desc">智能诊断,即时回复</div></a><div class="rno-scrollbar-tools-bubble-m-item"><div class="rno-scrollbar-tools-bubble-m-more"><a href="https://cloud.tencent.com/act/event/connect-service" target="_blank">查看更多联系 ></a></div></div></div></div></div><div class="rno-scrollbar-tools-item rno-scrollbar-tools-document rno-scrollbar-tools-service J-scrollbarTOC"><div class="rno-scrollbar-tools-button rno-scrollbar-tools-toggle rno-documents-tools-catalog" style="position:relative;margin-right:8px"><span class="rno-scrollbar-tools-button-desc">目录</span><div class="J-hoverPanel" style="position:absolute;z-index:6;bottom:42px;padding-bottom:8px;left:-1px;white-space:nowrap;text-align:left;display:none"><div class="rno-scrollbar-tools-bubble rno-scrollbar-toc-layer" style="position:static"><div class="rno-scrollbar-toc-wrap"><dl class="rno-scrollbar-toc-dl J-scrollbarTocList"></dl></div></div></div></div></div></div></div><a style="display:none" class="qc-back2top J-qc-back2top" title="返回顶部">返回顶部</a><script nonce="the-nonce">window.__staticRouterHydrationData = JSON.parse("{\"loaderData\":{\"0\":null,\"product\":{\"data\":{\"hotTips\":{\"activityName\":\"视频服务与安全产品捉虫活动邀您参加!\u003e\",\"link\":\"https://cloud.tencent.com/document/product/855/112110\",\"tipTag\":\"HOT\",\"enable\":true},\"meta\":{\"routebase\":\"/document\",\"module\":\"product\"},\"category\":{\"title\":\"实时音视频\",\"url\":\"/document/product/647\",\"module\":\"product\"},\"sidebar\":{\"title\":\"文档中心\",\"entry\":\"/document/product\",\"catalogue\":{\"list\":[{\"id\":74192,\"title\":\"动态与公告\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_74192_cn.pdf\",\"children\":[{\"id\":45151,\"title\":\"产品动态\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_45151_cn.pdf\",\"link\":\"/document/product/647/45151\"},{\"id\":103753,\"title\":\"2024年公告\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112945,\"title\":\"(11月)实时音视频 Web SDK 旧版本停止维护通知\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112945\"},{\"id\":106921,\"title\":\"(6月)实时音视频新增虚拟背景功能\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106921\"},{\"id\":105340,\"title\":\"(4月)App Store 对第三方 SDK 隐私清单要求的更新\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105340\"},{\"id\":105013,\"title\":\"(4月)实时音视频 TRTC 包月套餐8折优惠即将到期\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105013\"},{\"id\":103754,\"title\":\"(2月)TRTC 监控仪表盘 API 内测到期通知\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103754\"}],\"link\":\"/document/product/647/103753\"},{\"id\":93218,\"title\":\"2023年公告\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":102628,\"title\":\"(12月)IM 专业版价格调整对 TUICallKit 和 TUIRoomKit 的影响\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/102628\"},{\"id\":102689,\"title\":\"(12月)多人音视频(TUIRoomKit)发布2.0版本 SDK 和推荐升级公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/102689\"},{\"id\":100601,\"title\":\"(11月)实时音视频 Web SDK 上线虚拟背景功能\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/100601\"},{\"id\":94880,\"title\":\"(7月)音视频通话(TUICallKit)上线通话记录看板功能\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94880\"},{\"id\":90263,\"title\":\"(4月)实时音视频 Web SDK 建议升级通知\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90263\"},{\"id\":90126,\"title\":\"(4月)关于音视频组件 TUIRoomKit 即将商业化公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90126\"},{\"id\":86976,\"title\":\"(3月)关于音视频通话 SDK 版本调整的公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/86976\"},{\"id\":86916,\"title\":\"(3月)关于 TRTC 录制投递至 COS 服务结束内测公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/86916\"},{\"id\":84072,\"title\":\"(1月)关于 TRTC 包月套餐上线的相关说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84072\"}],\"link\":\"/document/product/647/93218\"},{\"id\":93219,\"title\":\"2022年公告\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":84682,\"title\":\"(12月)关于音视频组件 TUIRoomKit 开启限免公测公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84682\"},{\"id\":83413,\"title\":\"(11月)关于实时音视频云端录制功能并发限制调整公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/83413\"},{\"id\":77735,\"title\":\"(10月)关于 TRTC 监控仪表盘商业化计费公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/77735\"},{\"id\":80427,\"title\":\"(9月)关于实时音视频(TRTC)SDK “startPlay”接口名变更的公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80427\"},{\"id\":80428,\"title\":\"(9月)关于实时音视频(TRTC)SDK 视频播放功能授权校验说明的公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80428\"},{\"id\":75993,\"title\":\"(6月)关于 TRTC 旁路推流和云端录制功能升级的公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/75993\"},{\"id\":74201,\"title\":\"(5月)关于实时音视频(TRTC)SDK 中视频播放能力升级及新增授权校验的公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74201\"},{\"id\":74193,\"title\":\"(5月)关于 TRTC 视频档位调整及转码功能升级公告\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74193\"}],\"link\":\"/document/product/647/93219\"}],\"link\":\"/document/product/647/74192\"},{\"id\":41102,\"title\":\"产品简介\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_41102_cn.pdf\",\"children\":[{\"id\":16788,\"title\":\"产品概述\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_16788_cn.pdf\",\"link\":\"/document/product/647/16788\"},{\"id\":46351,\"title\":\"基本概念\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/46351\"},{\"id\":41105,\"title\":\"产品功能\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/41105\"},{\"id\":41103,\"title\":\"产品优势\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/41103\"},{\"id\":46252,\"title\":\"应用场景\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/46252\"},{\"id\":56382,\"title\":\"性能数据\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/56382\"}],\"link\":\"/document/product/647/41102\"},{\"id\":17155,\"title\":\"购买指南\",\"type\":\"directory\",\"docType\":\"price\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_17155_cn.pdf\",\"children\":[{\"id\":17157,\"title\":\"计费概述\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/17157\"},{\"id\":44360,\"title\":\"免费试用\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/44360\"},{\"id\":85386,\"title\":\"包月套餐计费说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/85386\"},{\"id\":44248,\"title\":\"音视频时长计费说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/44248\"},{\"id\":90808,\"title\":\"其他功能服务用量计费说明\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":75047,\"title\":\"录制与投递\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/75047\"},{\"id\":49446,\"title\":\"云端混流转码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/49446\"},{\"id\":81331,\"title\":\"数据仪表盘\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81331\"},{\"id\":82155,\"title\":\"旁路转推\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82155\"},{\"id\":111976,\"title\":\"AI 智能识别\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111976\"},{\"id\":111506,\"title\":\"视频截图上传\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111506\"}],\"link\":\"/document/product/647/90808\"},{\"id\":44247,\"title\":\"时长补充包计费说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/44247\"},{\"id\":58254,\"title\":\"折扣活动\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/58254\"},{\"id\":37099,\"title\":\"购买指引\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37099\"},{\"id\":87921,\"title\":\"套餐升级说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/87921\"},{\"id\":90809,\"title\":\"退费说明\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":87918,\"title\":\"包月套餐退费说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/87918\"},{\"id\":48226,\"title\":\"时长补充包退费说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/48226\"}],\"link\":\"/document/product/647/90809\"},{\"id\":68109,\"title\":\"欠费停服说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/68109\"},{\"id\":44364,\"title\":\"计费常见问题\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/44364\"}],\"link\":\"/document/product/647/17155\"},{\"id\":49327,\"title\":\"新手指引\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_49327_cn.pdf\",\"link\":\"/document/product/647/49327\"},{\"id\":17021,\"title\":\"Demo 体验\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_17021_cn.pdf\",\"link\":\"/document/product/647/17021\"},{\"id\":78727,\"title\":\"视频通话(含 UI)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_78727_cn.pdf\",\"children\":[{\"id\":78742,\"title\":\"组件介绍(TUICallKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78742\"},{\"id\":104662,\"title\":\"开通服务(TUICallKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104662\"},{\"id\":106902,\"title\":\"跑通 Demo(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":106903,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106903\"},{\"id\":106904,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106904\"},{\"id\":106905,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106905\"},{\"id\":106906,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106906\"},{\"id\":108229,\"title\":\"微信小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/108229\"},{\"id\":108230,\"title\":\"uni-app(小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/108230\"},{\"id\":111859,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111859\"}],\"link\":\"/document/product/647/106902\"},{\"id\":78728,\"title\":\"快速接入(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":78729,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78729\"},{\"id\":78730,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78730\"},{\"id\":78731,\"title\":\"Web\u0026H5 (Vue2/Vue3)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78731\"},{\"id\":102510,\"title\":\"Web\u0026H5 (React)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/102510\"},{\"id\":78732,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78732\"},{\"id\":78912,\"title\":\"uni-app(小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78912\"},{\"id\":105589,\"title\":\"小程序插件\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105589\"},{\"id\":78733,\"title\":\"微信小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78733\"},{\"id\":82985,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82985\"}],\"link\":\"/document/product/647/78728\"},{\"id\":78734,\"title\":\"界面定制(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":78739,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78739\"},{\"id\":78738,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78738\"},{\"id\":81014,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81014\"},{\"id\":89358,\"title\":\"微信小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/89358\"},{\"id\":96721,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96721\"},{\"id\":105372,\"title\":\"uni-app(小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105372\"}],\"link\":\"/document/product/647/78734\"},{\"id\":78735,\"title\":\"离线唤醒(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":87922,\"title\":\"Flutter\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":106014,\"title\":\"Notification\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106014\"},{\"id\":106015,\"title\":\"VoIP\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106015\"}],\"link\":\"/document/product/647/87922\"},{\"id\":78740,\"title\":\"Android\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":105230,\"title\":\"Notification\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105230\"},{\"id\":105231,\"title\":\"VoIP\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105231\"}],\"link\":\"/document/product/647/78740\"},{\"id\":78741,\"title\":\"iOS\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":90206,\"title\":\"Notification\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90206\"},{\"id\":90207,\"title\":\"VoIP\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90207\"}],\"link\":\"/document/product/647/78741\"},{\"id\":105867,\"title\":\"uni-app (客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105867\"}],\"link\":\"/document/product/647/78735\"},{\"id\":104931,\"title\":\"虚拟背景(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104932,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104932\"},{\"id\":104933,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104933\"},{\"id\":106071,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106071\"},{\"id\":105590,\"title\":\"uniapp(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105590\"},{\"id\":105958,\"title\":\"uniapp(小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105958\"},{\"id\":105959,\"title\":\"微信小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105959\"},{\"id\":105715,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105715\"}],\"link\":\"/document/product/647/104931\"},{\"id\":104668,\"title\":\"悬浮窗(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104669,\"title\":\"Android\u0026iOS\u0026Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104669\"},{\"id\":104670,\"title\":\"Web\u0026H5\u0026uni-app (小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104670\"},{\"id\":104682,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104682\"},{\"id\":105436,\"title\":\"原生小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105436\"}],\"link\":\"/document/product/647/104668\"},{\"id\":80373,\"title\":\"云端录制(TUICallKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80373\"},{\"id\":109794,\"title\":\"USB 摄像头(TUICallKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109794\"},{\"id\":104551,\"title\":\"更多特性(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104663,\"title\":\"设置昵称、头像(全平台)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104663\"},{\"id\":104681,\"title\":\"设置分辨率、填充模式(Web)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104681\"},{\"id\":104664,\"title\":\"群组通话\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104665,\"title\":\"Android\u0026iOS\u0026Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104665\"},{\"id\":104666,\"title\":\"Web\u0026H5\u0026小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104666\"},{\"id\":104667,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104667\"}],\"link\":\"/document/product/647/104664\"},{\"id\":95026,\"title\":\"美颜特效\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":95027,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/95027\"},{\"id\":95028,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/95028\"},{\"id\":104231,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104231\"}],\"link\":\"/document/product/647/95026\"},{\"id\":104671,\"title\":\"自定义铃声\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104672,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104672\"},{\"id\":104673,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104673\"},{\"id\":104674,\"title\":\"Web\u0026H5\u0026小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104674\"},{\"id\":104675,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104675\"},{\"id\":104676,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104676\"}],\"link\":\"/document/product/647/104671\"},{\"id\":104677,\"title\":\"监听通话状态\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104678,\"title\":\"Android\u0026iOS\u0026Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104678\"},{\"id\":104679,\"title\":\"Web\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104679\"},{\"id\":104680,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104680\"},{\"id\":106641,\"title\":\"uniapp(小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106641\"},{\"id\":106649,\"title\":\"微信小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106649\"}],\"link\":\"/document/product/647/104677\"},{\"id\":109357,\"title\":\"语言设置\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":109731,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109731\"},{\"id\":109732,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109732\"},{\"id\":109358,\"title\":\"Web\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109358\"},{\"id\":109730,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109730\"},{\"id\":109737,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109737\"}],\"link\":\"/document/product/647/109357\"},{\"id\":110360,\"title\":\"体积优化\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110361,\"title\":\"uni-app (小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110361\"}],\"link\":\"/document/product/647/110360\"}],\"link\":\"/document/product/647/104551\"},{\"id\":96211,\"title\":\"服务端 API(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":96212,\"title\":\"通话记录简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96212\"},{\"id\":94881,\"title\":\"通话记录看板\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94881\"},{\"id\":96213,\"title\":\"服务端回调\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":96214,\"title\":\"通话状态回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96214\"},{\"id\":102981,\"title\":\"通话事件回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/102981\"},{\"id\":96215,\"title\":\"回调配置\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":96216,\"title\":\"回调配置 API 列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96216\"},{\"id\":96217,\"title\":\"创建回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96217\"},{\"id\":96218,\"title\":\"查询回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96218\"},{\"id\":96219,\"title\":\"更新回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96219\"},{\"id\":96220,\"title\":\"删除回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96220\"}],\"link\":\"/document/product/647/96215\"}],\"link\":\"/document/product/647/96213\"},{\"id\":96221,\"title\":\"REST API\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110047,\"title\":\"通话记录\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":96222,\"title\":\"REST API 简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96222\"},{\"id\":96223,\"title\":\"通过 callId 获取记录\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96223\"},{\"id\":96224,\"title\":\"通过条件获取记录\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96224\"}],\"link\":\"/document/product/647/110047\"},{\"id\":110048,\"title\":\"结束通话\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110048\"}],\"link\":\"/document/product/647/96221\"}],\"link\":\"/document/product/647/96211\"},{\"id\":78736,\"title\":\"客户端 API(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":78743,\"title\":\"Android\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":78748,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78748\"},{\"id\":78750,\"title\":\"TUICallKit\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78750\"},{\"id\":78749,\"title\":\"TUICallEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78749\"},{\"id\":78751,\"title\":\"TUICallObserver\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78751\"},{\"id\":90338,\"title\":\"类型定义\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90338\"}],\"link\":\"/document/product/647/78743\"},{\"id\":78744,\"title\":\"iOS\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":78752,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78752\"},{\"id\":78753,\"title\":\"TUICallKit\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78753\"},{\"id\":78754,\"title\":\"TUICallEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78754\"},{\"id\":78755,\"title\":\"TUICallObserver\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78755\"},{\"id\":90446,\"title\":\"类型定义\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90446\"}],\"link\":\"/document/product/647/78744\"},{\"id\":78745,\"title\":\"Web\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":78756,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78756\"},{\"id\":81015,\"title\":\"TUICallKit\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81015\"},{\"id\":78757,\"title\":\"TUICallEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78757\"},{\"id\":78758,\"title\":\"TUICallEvent\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78758\"}],\"link\":\"/document/product/647/78745\"},{\"id\":78746,\"title\":\"小程序\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":78759,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78759\"},{\"id\":78760,\"title\":\"TUICallKit\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78760\"},{\"id\":78761,\"title\":\"TUICallEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78761\"},{\"id\":81012,\"title\":\"TUICallEvent\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81012\"}],\"link\":\"/document/product/647/78746\"},{\"id\":78747,\"title\":\"uni-app(客户端)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":78762,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78762\"},{\"id\":78763,\"title\":\"TUICallKit\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78763\"},{\"id\":85388,\"title\":\"TUICallEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/85388\"},{\"id\":78764,\"title\":\"TUICallEvent\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78764\"}],\"link\":\"/document/product/647/78747\"},{\"id\":83051,\"title\":\"Flutter\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":83052,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/83052\"},{\"id\":83053,\"title\":\"TUICallKit\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/83053\"},{\"id\":90516,\"title\":\"TUICallEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90516\"},{\"id\":83054,\"title\":\"TUICallObserver\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/83054\"},{\"id\":90448,\"title\":\"类型定义\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90448\"}],\"link\":\"/document/product/647/83051\"}],\"link\":\"/document/product/647/78736\"},{\"id\":101604,\"title\":\"错误码表(TUICallKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101604\"},{\"id\":71931,\"title\":\"发布日志(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":83237,\"title\":\"uni-app(小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/83237\"},{\"id\":80930,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80930\"},{\"id\":80931,\"title\":\"Android\u0026iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80931\"},{\"id\":80932,\"title\":\"uni-app (客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80932\"},{\"id\":83055,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/83055\"},{\"id\":101795,\"title\":\"微信小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101795\"}],\"link\":\"/document/product/647/71931\"},{\"id\":78737,\"title\":\"常见问题(TUICallKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":84363,\"title\":\"全平台\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84363\"},{\"id\":78769,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78769\"},{\"id\":78767,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78767\"},{\"id\":78768,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78768\"},{\"id\":81958,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81958\"},{\"id\":89186,\"title\":\"uni-app(小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/89186\"},{\"id\":78770,\"title\":\"微信小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78770\"},{\"id\":84493,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84493\"}],\"link\":\"/document/product/647/78737\"}],\"link\":\"/document/product/647/78727\"},{\"id\":45666,\"title\":\"多人会议(含 UI)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_45666_cn.pdf\",\"children\":[{\"id\":81959,\"title\":\"组件介绍(TUIRoomKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81959\"},{\"id\":104842,\"title\":\"开通服务(TUIRoomKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104842\"},{\"id\":107156,\"title\":\"跑通 Demo(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107225,\"title\":\"Web\u0026H5 (Vue2/Vue3)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107225\"},{\"id\":107157,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107157\"},{\"id\":107158,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107158\"},{\"id\":107226,\"title\":\"uni-app (小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107226\"},{\"id\":107159,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107159\"},{\"id\":107227,\"title\":\"Electron (Windows\u0026Mac)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107227\"}],\"link\":\"/document/product/647/107156\"},{\"id\":81960,\"title\":\"快速接入(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":81962,\"title\":\"Web\u0026H5 (Vue2/Vue3)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81962\"},{\"id\":81961,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81961\"},{\"id\":84237,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84237\"},{\"id\":97754,\"title\":\"uni-app (小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/97754\"},{\"id\":106664,\"title\":\"uni-app (客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106664\"},{\"id\":84238,\"title\":\"Electron (Windows\u0026Mac)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84238\"},{\"id\":94561,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94561\"}],\"link\":\"/document/product/647/81960\"},{\"id\":112692,\"title\":\"屏幕共享(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112693,\"title\":\"Android\u0026iOS\u0026Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112693\"}],\"link\":\"/document/product/647/112692\"},{\"id\":109720,\"title\":\"预定会议(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":109721,\"title\":\"Android\u0026iOS\u0026Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109721\"},{\"id\":109791,\"title\":\"Web\u0026Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109791\"},{\"id\":113031,\"title\":\"Web(H5)\u0026小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113031\"}],\"link\":\"/document/product/647/109720\"},{\"id\":111260,\"title\":\"会中呼叫(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":111261,\"title\":\"Android\u0026iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111261\"},{\"id\":111458,\"title\":\"Web\u0026Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111458\"},{\"id\":112561,\"title\":\"小程序\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112561\"}],\"link\":\"/document/product/647/111260\"},{\"id\":104843,\"title\":\"会议控制 (TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":105897,\"title\":\"Android\u0026iOS\u0026Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105897\"},{\"id\":105898,\"title\":\"Web\u0026Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105898\"},{\"id\":105899,\"title\":\"小程序\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105899\"}],\"link\":\"/document/product/647/104843\"},{\"id\":81963,\"title\":\"界面定制(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":81964,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81964\"},{\"id\":84240,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84240\"},{\"id\":81965,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81965\"},{\"id\":84241,\"title\":\"Electron (Windows\u0026Mac)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84241\"},{\"id\":104289,\"title\":\"uni-app (小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104289\"},{\"id\":101675,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101675\"}],\"link\":\"/document/product/647/81963\"},{\"id\":111139,\"title\":\"白板功能(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":111140,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111140\"}],\"link\":\"/document/product/647/111139\"},{\"id\":104534,\"title\":\"云端录制 (TUIRoomKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104534\"},{\"id\":106566,\"title\":\"机器人推流(TUIRoomKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106566\"},{\"id\":104844,\"title\":\"AI 降噪(TUIRoomKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104844\"},{\"id\":106364,\"title\":\"更多特性(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112751,\"title\":\"AI 实时字幕\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112752,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112752\"},{\"id\":112753,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112753\"}],\"link\":\"/document/product/647/112751\"},{\"id\":112557,\"title\":\"弹幕聊天(Android\u0026iOS\u0026Flutter)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112557\"},{\"id\":111470,\"title\":\"房间密码(全平台)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111470\"},{\"id\":111340,\"title\":\"基础美颜(Web)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111340\"},{\"id\":109678,\"title\":\"设置昵称、头像(全平台)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109678\"},{\"id\":104872,\"title\":\"会中聊天\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104873,\"title\":\"Web\u0026Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104873\"},{\"id\":104874,\"title\":\"Android\u0026iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104874\"},{\"id\":108289,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/108289\"},{\"id\":112757,\"title\":\"uniapp(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112757\"}],\"link\":\"/document/product/647/104872\"},{\"id\":110326,\"title\":\"离线唤醒\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110327,\"title\":\"会前提醒(Android/iOS)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110327\"},{\"id\":112558,\"title\":\"会中呼叫提醒(Android/iOS)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112558\"}],\"link\":\"/document/product/647/110326\"},{\"id\":106365,\"title\":\"悬浮窗(Android\u0026iOS)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106365\"},{\"id\":111262,\"title\":\"文字水印\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":111263,\"title\":\"Android\u0026iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111263\"},{\"id\":106560,\"title\":\"Web\u0026Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106560\"}],\"link\":\"/document/product/647/111262\"},{\"id\":106558,\"title\":\"虚拟背景\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":106559,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106559\"}],\"link\":\"/document/product/647/106558\"},{\"id\":109996,\"title\":\"监听会议状态\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109996\"}],\"link\":\"/document/product/647/106364\"},{\"id\":81966,\"title\":\"客户端 API(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":81969,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81969\"},{\"id\":84252,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84252\"},{\"id\":84245,\"title\":\"iOS\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84245\"},{\"id\":98555,\"title\":\"uni-app(小程序)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/98555\"},{\"id\":107133,\"title\":\"uni-app(客户端)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107133\"},{\"id\":105960,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105960\"},{\"id\":84264,\"title\":\"Electron(Windows\u0026Mac)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84264\"}],\"link\":\"/document/product/647/81966\"},{\"id\":104441,\"title\":\"服务端 API(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104442,\"title\":\"REST API\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104443,\"title\":\"REST API简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104443\"},{\"id\":104444,\"title\":\"REST API 列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104444\"},{\"id\":104445,\"title\":\"房间管理\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104446,\"title\":\"创建房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104446\"},{\"id\":104447,\"title\":\"解散房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104447\"},{\"id\":104448,\"title\":\"更新房间信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104448\"},{\"id\":104449,\"title\":\"获取房间信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104449\"}],\"link\":\"/document/product/647/104445\"},{\"id\":104450,\"title\":\"用户管理\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104451,\"title\":\"获取房间成员列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104451\"},{\"id\":104452,\"title\":\"更新房间成员资料\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104452\"},{\"id\":104453,\"title\":\"转让房主\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104453\"},{\"id\":104454,\"title\":\"设置房间成员标签\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104454\"},{\"id\":104455,\"title\":\"房间成员封禁\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104455\"},{\"id\":104456,\"title\":\"房间成员解封\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104456\"},{\"id\":104457,\"title\":\"获取被封禁房间成员列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104457\"},{\"id\":104458,\"title\":\"踢出房间成员\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104458\"}],\"link\":\"/document/product/647/104450\"},{\"id\":104459,\"title\":\"连麦管理\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104460,\"title\":\"获取麦位列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104460\"},{\"id\":104461,\"title\":\"用户上麦\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104461\"},{\"id\":104462,\"title\":\"用户下麦\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104462\"},{\"id\":104463,\"title\":\"锁定麦位\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104463\"}],\"link\":\"/document/product/647/104459\"}],\"link\":\"/document/product/647/104442\"},{\"id\":104464,\"title\":\"第三方回调\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104465,\"title\":\"第三方回调简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104465\"},{\"id\":104466,\"title\":\"回调命令列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104466\"},{\"id\":104467,\"title\":\"回调配置\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104468,\"title\":\"查询回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104468\"},{\"id\":104469,\"title\":\"创建回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104469\"},{\"id\":104470,\"title\":\"更新回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104470\"},{\"id\":104471,\"title\":\"删除回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104471\"}],\"link\":\"/document/product/647/104467\"},{\"id\":104472,\"title\":\"房间相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104473,\"title\":\"创建房间之后回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104473\"},{\"id\":104474,\"title\":\"解散房间后的回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104474\"},{\"id\":104475,\"title\":\"更新房间信息之后的回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104475\"}],\"link\":\"/document/product/647/104472\"},{\"id\":104476,\"title\":\"用户相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104477,\"title\":\"用户进房之后的回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104477\"},{\"id\":104478,\"title\":\"用户退房之后的回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104478\"}],\"link\":\"/document/product/647/104476\"},{\"id\":104479,\"title\":\"连麦相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104480,\"title\":\"麦位列表变更之后回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104480\"}],\"link\":\"/document/product/647/104479\"}],\"link\":\"/document/product/647/104464\"}],\"link\":\"/document/product/647/104441\"},{\"id\":90288,\"title\":\"发布日志(TUIRoomKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90288\"},{\"id\":81976,\"title\":\"常见问题(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":84271,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84271\"},{\"id\":84272,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84272\"},{\"id\":81977,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81977\"},{\"id\":106650,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106650\"},{\"id\":103363,\"title\":\"小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103363\"},{\"id\":101676,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101676\"},{\"id\":104395,\"title\":\"升级方案(TUIRoomKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":102690,\"title\":\"2.0版本升级指引\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/102690\"}],\"link\":\"/document/product/647/104395\"},{\"id\":91703,\"title\":\"错误码(TUIRoomKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/91703\"}],\"link\":\"/document/product/647/81976\"}],\"link\":\"/document/product/647/45666\"},{\"id\":105437,\"title\":\"在线直播(含 UI)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_105437_cn.pdf\",\"children\":[{\"id\":105438,\"title\":\"组件介绍(TUILiveKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105438\"},{\"id\":105439,\"title\":\"开通服务(TUILiveKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105439\"},{\"id\":106535,\"title\":\"跑通 Demo(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":106536,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106536\"},{\"id\":106537,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106537\"},{\"id\":108594,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/108594\"},{\"id\":109674,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109674\"}],\"link\":\"/document/product/647/106535\"},{\"id\":105440,\"title\":\"快速接入(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":105441,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105441\"},{\"id\":105442,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105442\"},{\"id\":109303,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109303\"},{\"id\":109675,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109675\"}],\"link\":\"/document/product/647/105440\"},{\"id\":110552,\"title\":\"界面定制(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110553,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110553\"},{\"id\":110632,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110632\"},{\"id\":110554,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110554\"}],\"link\":\"/document/product/647/110552\"},{\"id\":112881,\"title\":\"开播和观看(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112882,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112882\"}],\"link\":\"/document/product/647/112881\"},{\"id\":110176,\"title\":\"房间列表(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110177,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110177\"},{\"id\":110178,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110178\"},{\"id\":110179,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110179\"}],\"link\":\"/document/product/647/110176\"},{\"id\":110328,\"title\":\"关注主播(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110329,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110329\"},{\"id\":110330,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110330\"}],\"link\":\"/document/product/647/110328\"},{\"id\":110555,\"title\":\"主播连线(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110556,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110556\"},{\"id\":110557,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110557\"}],\"link\":\"/document/product/647/110555\"},{\"id\":111264,\"title\":\"主播 PK(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":111265,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111265\"},{\"id\":111266,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111266\"}],\"link\":\"/document/product/647/111264\"},{\"id\":110558,\"title\":\"观众连麦(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110633,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110633\"},{\"id\":110559,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110559\"},{\"id\":110560,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110560\"}],\"link\":\"/document/product/647/110558\"},{\"id\":105443,\"title\":\"互动弹幕(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":105444,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105444\"},{\"id\":105445,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105445\"}],\"link\":\"/document/product/647/105443\"},{\"id\":105446,\"title\":\"互动礼物(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":105447,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105447\"},{\"id\":105448,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105448\"}],\"link\":\"/document/product/647/105446\"},{\"id\":109658,\"title\":\"礼物特效(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":109659,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109659\"},{\"id\":109660,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109660\"}],\"link\":\"/document/product/647/109658\"},{\"id\":109661,\"title\":\"美颜特效(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":109662,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109662\"},{\"id\":109663,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109663\"}],\"link\":\"/document/product/647/109661\"},{\"id\":112886,\"title\":\"悬浮窗(TUILiveKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112886\"},{\"id\":105449,\"title\":\"客户端 API(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":111157,\"title\":\"Android\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112694,\"title\":\"VideoLiveKit\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112694\"},{\"id\":112695,\"title\":\"LiveCoreView\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112695\"},{\"id\":112696,\"title\":\"LiveCoreViewDefine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112696\"}],\"link\":\"/document/product/647/111157\"},{\"id\":111158,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111158\"},{\"id\":110634,\"title\":\"Electron Engine API\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110636,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110636\"},{\"id\":110637,\"title\":\"TUIRoomEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110637\"},{\"id\":110638,\"title\":\"TUIRoomEvent\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110638\"},{\"id\":110639,\"title\":\"TUIRoomEngine Defines\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110639\"},{\"id\":110641,\"title\":\"TUIDeviceManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110641\"},{\"id\":110640,\"title\":\"TUIAudioEffectManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110640\"},{\"id\":110642,\"title\":\"TUIMediaMixingManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110642\"},{\"id\":110643,\"title\":\"TUIVideoEffectPluginManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110643\"}],\"link\":\"/document/product/647/110634\"}],\"link\":\"/document/product/647/105449\"},{\"id\":110031,\"title\":\"服务端 API (TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110032,\"title\":\"REST API\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110033,\"title\":\"REST API 简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110033\"},{\"id\":110034,\"title\":\"REST API 列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110034\"},{\"id\":110035,\"title\":\"房间相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110036,\"title\":\"创建房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110036\"},{\"id\":110037,\"title\":\"更新房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110037\"},{\"id\":110038,\"title\":\"获取房间信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110038\"},{\"id\":110039,\"title\":\"获取直播列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110039\"},{\"id\":110040,\"title\":\"解散房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110040\"},{\"id\":110775,\"title\":\"获取房间自定义信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110775\"},{\"id\":110776,\"title\":\"设置房间自定义信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110776\"},{\"id\":110777,\"title\":\"删除房间自定义信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110777\"}],\"link\":\"/document/product/647/110035\"},{\"id\":110041,\"title\":\"用户相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110042,\"title\":\"成员封禁\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110042\"},{\"id\":110043,\"title\":\"获取封禁列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110043\"},{\"id\":110044,\"title\":\"获取管理员列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110044\"},{\"id\":110045,\"title\":\"解除成员封禁\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110045\"},{\"id\":110046,\"title\":\"修改管理员\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110046\"}],\"link\":\"/document/product/647/110041\"},{\"id\":110644,\"title\":\"连麦管理\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110645,\"title\":\"获取麦位列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110645\"},{\"id\":110646,\"title\":\"用户上麦\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110646\"},{\"id\":110647,\"title\":\"用户下麦\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110647\"},{\"id\":110648,\"title\":\"锁定麦位\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110648\"}],\"link\":\"/document/product/647/110644\"}],\"link\":\"/document/product/647/110032\"},{\"id\":110514,\"title\":\"第三方回调\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110515,\"title\":\"第三方回调简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110515\"},{\"id\":110516,\"title\":\"回调命令列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110516\"},{\"id\":110517,\"title\":\"回调配置\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110518,\"title\":\"查询回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110518\"},{\"id\":110519,\"title\":\"更新回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110519\"},{\"id\":110520,\"title\":\"创建回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110520\"},{\"id\":110521,\"title\":\"删除回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110521\"}],\"link\":\"/document/product/647/110517\"},{\"id\":110522,\"title\":\"房间相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110523,\"title\":\"创建房间之后回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110523\"},{\"id\":110524,\"title\":\"解散房间之后回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110524\"}],\"link\":\"/document/product/647/110522\"},{\"id\":110525,\"title\":\"用户相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110526,\"title\":\"房间成员状态变更回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110526\"}],\"link\":\"/document/product/647/110525\"},{\"id\":110527,\"title\":\"连麦相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110528,\"title\":\"麦位列表变更之后回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110528\"}],\"link\":\"/document/product/647/110527\"}],\"link\":\"/document/product/647/110514\"}],\"link\":\"/document/product/647/110031\"},{\"id\":105452,\"title\":\"错误码(TUILiveKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105452\"},{\"id\":105453,\"title\":\"发布日志(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":105455,\"title\":\"Android\u0026iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105455\"}],\"link\":\"/document/product/647/105453\"},{\"id\":105456,\"title\":\"常见问题(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":105457,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105457\"},{\"id\":105458,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105458\"}],\"link\":\"/document/product/647/105456\"}],\"link\":\"/document/product/647/105437\"},{\"id\":45736,\"title\":\"语音聊天室(含 UI)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_45736_cn.pdf\",\"children\":[{\"id\":107963,\"title\":\"组件介绍(TUILiveKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107963\"},{\"id\":111255,\"title\":\"开通服务(TUILiveKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111255\"},{\"id\":107964,\"title\":\"跑通 Demo(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107965,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107965\"},{\"id\":107966,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107966\"}],\"link\":\"/document/product/647/107964\"},{\"id\":107967,\"title\":\"快速接入(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107969,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107969\"},{\"id\":107968,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107968\"}],\"link\":\"/document/product/647/107967\"},{\"id\":110180,\"title\":\"房间列表(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110181,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110181\"},{\"id\":110182,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110182\"}],\"link\":\"/document/product/647/110180\"},{\"id\":110331,\"title\":\"关注主播(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110332,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110332\"},{\"id\":110333,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110333\"}],\"link\":\"/document/product/647/110331\"},{\"id\":107970,\"title\":\"互动弹幕(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107971,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107971\"},{\"id\":107972,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107972\"}],\"link\":\"/document/product/647/107970\"},{\"id\":107973,\"title\":\"互动礼物(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107974,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107974\"},{\"id\":107975,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107975\"}],\"link\":\"/document/product/647/107973\"},{\"id\":111267,\"title\":\"礼物特效(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":111268,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111268\"},{\"id\":111269,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111269\"}],\"link\":\"/document/product/647/111267\"},{\"id\":107976,\"title\":\"客户端API(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":111156,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111156\"},{\"id\":111159,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111159\"}],\"link\":\"/document/product/647/107976\"},{\"id\":110049,\"title\":\"服务端API (TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110050,\"title\":\"REST API\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110051,\"title\":\"REST API 简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110051\"},{\"id\":110052,\"title\":\"REST API 列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110052\"},{\"id\":110053,\"title\":\"房间相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110054,\"title\":\"创建房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110054\"},{\"id\":110055,\"title\":\"更新房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110055\"},{\"id\":110056,\"title\":\"获取房间信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110056\"},{\"id\":110057,\"title\":\"获取直播列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110057\"},{\"id\":110058,\"title\":\"解散房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110058\"},{\"id\":110857,\"title\":\"获取房间自定义信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110857\"},{\"id\":110858,\"title\":\"设置房间自定义信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110858\"},{\"id\":110859,\"title\":\"删除房间自定义信息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110859\"}],\"link\":\"/document/product/647/110053\"},{\"id\":110059,\"title\":\"用户相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110060,\"title\":\"成员封禁\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110060\"},{\"id\":110061,\"title\":\"获取封禁列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110061\"},{\"id\":110062,\"title\":\"获取管理员列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110062\"},{\"id\":110063,\"title\":\"解除成员封禁\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110063\"},{\"id\":110064,\"title\":\"修改管理员\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110064\"}],\"link\":\"/document/product/647/110059\"},{\"id\":110665,\"title\":\"连麦管理\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110666,\"title\":\"获取麦位列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110666\"},{\"id\":110667,\"title\":\"用户下麦\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110667\"},{\"id\":110668,\"title\":\"用户上麦\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110668\"},{\"id\":110669,\"title\":\"锁定麦位\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110669\"}],\"link\":\"/document/product/647/110665\"}],\"link\":\"/document/product/647/110050\"},{\"id\":110670,\"title\":\"第三方回调\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110671,\"title\":\"第三方回调简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110671\"},{\"id\":110672,\"title\":\"回调命令列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110672\"},{\"id\":110673,\"title\":\"回调配置\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110674,\"title\":\"查询回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110674\"},{\"id\":110675,\"title\":\"更新回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110675\"},{\"id\":110676,\"title\":\"创建回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110676\"},{\"id\":110677,\"title\":\"删除回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110677\"}],\"link\":\"/document/product/647/110673\"},{\"id\":110678,\"title\":\"房间相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110679,\"title\":\"创建房间之后回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110679\"},{\"id\":110680,\"title\":\"解散房间之后回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110680\"}],\"link\":\"/document/product/647/110678\"},{\"id\":110681,\"title\":\"用户相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110682,\"title\":\"房间成员状态变更回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110682\"}],\"link\":\"/document/product/647/110681\"},{\"id\":110683,\"title\":\"连麦相关\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110684,\"title\":\"麦位列表变更之后回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110684\"}],\"link\":\"/document/product/647/110683\"}],\"link\":\"/document/product/647/110670\"}],\"link\":\"/document/product/647/110049\"},{\"id\":107979,\"title\":\"错误码(TUILiveKit)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107979\"},{\"id\":107980,\"title\":\"发布日志(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107981,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107981\"},{\"id\":107982,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107982\"}],\"link\":\"/document/product/647/107980\"},{\"id\":107983,\"title\":\"常见问题(TUILiveKit)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107984,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107984\"},{\"id\":107985,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107985\"}],\"link\":\"/document/product/647/107983\"}],\"link\":\"/document/product/647/45736\"},{\"id\":32164,\"title\":\"无 UI 集成\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_32164_cn.pdf\",\"children\":[{\"id\":47806,\"title\":\"SDK 下载\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_47806_cn.pdf\",\"children\":[{\"id\":32689,\"title\":\"SDK 下载\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_32689_cn.pdf\",\"link\":\"/document/product/647/32689\"},{\"id\":46907,\"title\":\"发布日志(App)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/46907\"},{\"id\":38958,\"title\":\"发布日志(Web\u0026H5)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38958\"},{\"id\":43117,\"title\":\"发布日志(Electron)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/43117\"},{\"id\":85314,\"title\":\"发布日志(uni-app)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/85314\"},{\"id\":106366,\"title\":\"发布日志(Flutter)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106366\"}],\"link\":\"/document/product/647/47806\"},{\"id\":32395,\"title\":\"API-Example\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32396,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32396\"},{\"id\":108474,\"title\":\"Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/108474\"},{\"id\":32166,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32166\"},{\"id\":71425,\"title\":\"Windows C#\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/71425\"},{\"id\":71413,\"title\":\"Windows C++\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/71413\"},{\"id\":76514,\"title\":\"Windows ActiveX\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/76514\"},{\"id\":32398,\"title\":\"Web\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32398\"},{\"id\":38548,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38548\"},{\"id\":32399,\"title\":\"小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32399\"},{\"id\":51601,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/51601\"},{\"id\":72629,\"title\":\"uni-app\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/72629\"}],\"link\":\"/document/product/647/32395\"},{\"id\":104396,\"title\":\"API-使用指引\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32167,\"title\":\"01. 导入 SDK 到项目中\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32173,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32173\"},{\"id\":32175,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32175\"},{\"id\":32176,\"title\":\"Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32176\"},{\"id\":32178,\"title\":\"Windows C#\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32178\"},{\"id\":71408,\"title\":\"Windows C++\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/71408\"},{\"id\":76512,\"title\":\"Windows ActiveX\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/76512\"},{\"id\":16863,\"title\":\"Web\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/16863\"},{\"id\":38549,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38549\"},{\"id\":32183,\"title\":\"小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32183\"},{\"id\":51602,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/51602\"},{\"id\":52914,\"title\":\"QT\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/52914\"},{\"id\":73371,\"title\":\"uni-app\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/73371\"}],\"link\":\"/document/product/647/32167\"},{\"id\":74633,\"title\":\"02. 进入房间\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":74634,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74634\"},{\"id\":74636,\"title\":\"Web\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74636\"},{\"id\":74635,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74635\"},{\"id\":74637,\"title\":\"小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74637\"},{\"id\":74638,\"title\":\"uni-app\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74638\"},{\"id\":103712,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103712\"}],\"link\":\"/document/product/647/74633\"},{\"id\":74639,\"title\":\"03. 订阅音视频流\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":74640,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74640\"},{\"id\":74642,\"title\":\"Web\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74642\"},{\"id\":74641,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74641\"},{\"id\":74643,\"title\":\"小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74643\"},{\"id\":74644,\"title\":\"uni-app\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74644\"},{\"id\":103713,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103713\"}],\"link\":\"/document/product/647/74639\"},{\"id\":74660,\"title\":\"04. 发布音视频流\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":74661,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74661\"},{\"id\":74662,\"title\":\"Web\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74662\"},{\"id\":74663,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74663\"},{\"id\":74664,\"title\":\"小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74664\"},{\"id\":74665,\"title\":\"uni-app\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74665\"},{\"id\":103714,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103714\"}],\"link\":\"/document/product/647/74660\"},{\"id\":74645,\"title\":\"05. 退出房间\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":74650,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74650\"},{\"id\":74652,\"title\":\"Web\u0026H5\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74652\"},{\"id\":74653,\"title\":\"小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74653\"},{\"id\":74892,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74892\"},{\"id\":74654,\"title\":\"uni-app\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74654\"},{\"id\":103715,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103715\"}],\"link\":\"/document/product/647/74645\"},{\"id\":104397,\"title\":\"06. 进阶指引\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":74646,\"title\":\"感知网络质量\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":74655,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74655\"},{\"id\":74656,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74656\"},{\"id\":74885,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74885\"},{\"id\":103716,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103716\"}],\"link\":\"/document/product/647/74646\"},{\"id\":32244,\"title\":\"开启屏幕分享\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":45750,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/45750\"},{\"id\":45751,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/45751\"},{\"id\":32249,\"title\":\"Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32249\"},{\"id\":32251,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32251\"},{\"id\":32247,\"title\":\"Windows\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32247\"},{\"id\":74883,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74883\"},{\"id\":53877,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/53877\"},{\"id\":76704,\"title\":\"uni-app\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/76704\"}],\"link\":\"/document/product/647/32244\"},{\"id\":74881,\"title\":\"分享系统声音\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":79928,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79928\"},{\"id\":52989,\"title\":\"Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/52989\"},{\"id\":74882,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74882\"},{\"id\":94554,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94554\"},{\"id\":100748,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/100748\"},{\"id\":103717,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103717\"}],\"link\":\"/document/product/647/74881\"},{\"id\":74666,\"title\":\"设定画面质量\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32236,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32236\"},{\"id\":74680,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74680\"},{\"id\":74888,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74888\"},{\"id\":103718,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103718\"}],\"link\":\"/document/product/647/74666\"},{\"id\":74886,\"title\":\"视频画面旋转\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32237,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32237\"},{\"id\":74887,\"title\":\"Electron\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74887\"},{\"id\":96266,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/96266\"},{\"id\":103719,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103719\"}],\"link\":\"/document/product/647/74886\"}],\"link\":\"/document/product/647/104397\"},{\"id\":74685,\"title\":\"07. 常见问题\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":45910,\"title\":\"全平台\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/45910\"},{\"id\":74686,\"title\":\"小程序\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74686\"},{\"id\":81008,\"title\":\"uni-app\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81008\"}],\"link\":\"/document/product/647/74685\"}],\"link\":\"/document/product/647/104396\"}],\"link\":\"/document/product/647/32164\"},{\"id\":107870,\"title\":\"热门场景实践\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_107870_cn.pdf\",\"children\":[{\"id\":110583,\"title\":\"AI 实时对话\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110584,\"title\":\"功能介绍\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110584\"},{\"id\":112470,\"title\":\"开发指南\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112471,\"title\":\"集成指引\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112471\"},{\"id\":112472,\"title\":\"智能打断逻辑\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112472\"},{\"id\":112473,\"title\":\"如何实现上下文管理\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112473\"},{\"id\":112474,\"title\":\"TRTC AI 对话状态回调功能\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112474\"},{\"id\":112475,\"title\":\"TRTC AI 对话实时字幕功能\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112475\"},{\"id\":112476,\"title\":\"自定义 TTS 协议\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112476\"}],\"link\":\"/document/product/647/112470\"},{\"id\":110585,\"title\":\"行业实践教程\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":110586,\"title\":\"情感陪伴\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110586\"},{\"id\":110587,\"title\":\"智能客服\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110587\"}],\"link\":\"/document/product/647/110585\"}],\"link\":\"/document/product/647/110583\"},{\"id\":112719,\"title\":\"在线教育解决方案\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112720,\"title\":\"组件介绍\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112720\"},{\"id\":112721,\"title\":\"开通服务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112721\"},{\"id\":112722,\"title\":\"跑通 Demo\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112723,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112723\"},{\"id\":112953,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112953\"}],\"link\":\"/document/product/647/112722\"},{\"id\":113032,\"title\":\"快速接入\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":113033,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113033\"}],\"link\":\"/document/product/647/113032\"},{\"id\":112899,\"title\":\"排课系统\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112900,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112900\"},{\"id\":113034,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113034\"}],\"link\":\"/document/product/647/112899\"},{\"id\":112901,\"title\":\"课堂内容保护\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112902,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112902\"},{\"id\":113035,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113035\"}],\"link\":\"/document/product/647/112901\"},{\"id\":112903,\"title\":\"课前提醒\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":113036,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113036\"}],\"link\":\"/document/product/647/112903\"},{\"id\":112904,\"title\":\"课中呼叫\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112905,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112905\"},{\"id\":113037,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113037\"}],\"link\":\"/document/product/647/112904\"},{\"id\":112906,\"title\":\"云端录制\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112906\"},{\"id\":112907,\"title\":\"AI课堂记录\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":112908,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112908\"},{\"id\":113038,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113038\"}],\"link\":\"/document/product/647/112907\"},{\"id\":112724,\"title\":\"发布日志\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112724\"}],\"link\":\"/document/product/647/112719\"},{\"id\":108994,\"title\":\"在线娃娃机\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/108994\"},{\"id\":107871,\"title\":\"远程医疗协作\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107871\"},{\"id\":107872,\"title\":\"教育培训\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107872\"},{\"id\":108918,\"title\":\"1V1 在线问诊\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/108918\"},{\"id\":110588,\"title\":\"1V1 社交\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110588\"}],\"link\":\"/document/product/647/107870\"},{\"id\":111141,\"title\":\"客户端 API\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_111141_cn.pdf\",\"children\":[{\"id\":111142,\"title\":\"TRTC SDK\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":94380,\"title\":\"简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94380\"},{\"id\":32253,\"title\":\"Android\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32267,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32267\"},{\"id\":79628,\"title\":\"TRTCCloud\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79628\"},{\"id\":79629,\"title\":\"TRTCCloudListener\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79629\"},{\"id\":79630,\"title\":\"TRTCStatistics\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79630\"},{\"id\":79631,\"title\":\"TXAudioEffectManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79631\"},{\"id\":79632,\"title\":\"TXBeautyManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79632\"},{\"id\":79633,\"title\":\"TXDeviceManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79633\"},{\"id\":79634,\"title\":\"类型定义\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79634\"},{\"id\":79635,\"title\":\"废弃接口\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79635\"},{\"id\":38307,\"title\":\"错误码表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38307\"}],\"link\":\"/document/product/647/32253\"},{\"id\":32252,\"title\":\"iOS\u0026Mac\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32258,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32258\"},{\"id\":79620,\"title\":\"TRTCCloud\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79620\"},{\"id\":79621,\"title\":\"TRTCCloudDelegate\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79621\"},{\"id\":79622,\"title\":\"TRTCStatistics\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79622\"},{\"id\":79623,\"title\":\"TXAudioEffectManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79623\"},{\"id\":79624,\"title\":\"TXBeautyManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79624\"},{\"id\":79625,\"title\":\"TXDeviceManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79625\"},{\"id\":79626,\"title\":\"类型定义\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79626\"},{\"id\":79627,\"title\":\"废弃接口\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79627\"},{\"id\":32257,\"title\":\"错误码表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32257\"}],\"link\":\"/document/product/647/32252\"},{\"id\":32255,\"title\":\"Web\u0026H5\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":17249,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/17249\"},{\"id\":34342,\"title\":\"错误码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/34342\"}],\"link\":\"/document/product/647/32255\"},{\"id\":32256,\"title\":\"小程序\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":17018,\"title\":\"trtc-wx\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/17018\"},{\"id\":38313,\"title\":\"错误码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38313\"}],\"link\":\"/document/product/647/32256\"},{\"id\":32254,\"title\":\"全平台(C++)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32268,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32268\"},{\"id\":79636,\"title\":\"ITRTCCloud\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79636\"},{\"id\":79637,\"title\":\"TRTCCloudCallback\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79637\"},{\"id\":79638,\"title\":\"ITRTCStatistics\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79638\"},{\"id\":79639,\"title\":\"ITXAudioEffectManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79639\"},{\"id\":79640,\"title\":\"ITXDeviceManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79640\"},{\"id\":79641,\"title\":\"类型定义\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79641\"},{\"id\":79642,\"title\":\"废弃接口\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/79642\"},{\"id\":38308,\"title\":\"错误码表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38308\"}],\"link\":\"/document/product/647/32254\"},{\"id\":81261,\"title\":\"Uni-App\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":81262,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81262\"},{\"id\":81263,\"title\":\"错误码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81263\"}],\"link\":\"/document/product/647/81261\"},{\"id\":38550,\"title\":\"Electron\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":38551,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38551\"},{\"id\":38552,\"title\":\"错误码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38552\"}],\"link\":\"/document/product/647/38550\"},{\"id\":51529,\"title\":\" Flutter\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":51530,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/51530\"},{\"id\":51531,\"title\":\"错误码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/51531\"}],\"link\":\"/document/product/647/51529\"},{\"id\":36777,\"title\":\"Windows(C#)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":36776,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/36776\"},{\"id\":38309,\"title\":\"错误码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/38309\"}],\"link\":\"/document/product/647/36777\"},{\"id\":80348,\"title\":\"Windows(ActiveX)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":80349,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80349\"},{\"id\":80350,\"title\":\"错误码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80350\"}],\"link\":\"/document/product/647/80348\"}],\"link\":\"/document/product/647/111142\"},{\"id\":111143,\"title\":\"RTC Room Engine SDK\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":111144,\"title\":\"SDK简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111144\"},{\"id\":111145,\"title\":\"Web\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":81968,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81968\"},{\"id\":81970,\"title\":\"TUIRoomEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81970\"},{\"id\":84260,\"title\":\"TUIRoomEvents\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84260\"},{\"id\":84261,\"title\":\"TUIRoomEngine Defines\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84261\"}],\"link\":\"/document/product/647/111145\"},{\"id\":111146,\"title\":\"Android\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":84251,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84251\"},{\"id\":84253,\"title\":\"TUIRoomEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84253\"},{\"id\":84254,\"title\":\"TUIRoomObserver\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84254\"},{\"id\":104256,\"title\":\"TUIRoomDeviceManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104256\"},{\"id\":109422,\"title\":\"TUIConferenceListManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109422\"},{\"id\":110513,\"title\":\"TUILiveConnectionManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110513\"},{\"id\":111564,\"title\":\"TUILiveBattleManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111564\"},{\"id\":107125,\"title\":\"TUILiveListManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107125\"},{\"id\":84255,\"title\":\"TUICommonDefine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84255\"},{\"id\":98504,\"title\":\"TUIRoomDefine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/98504\"},{\"id\":104257,\"title\":\"废弃接口\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104257\"}],\"link\":\"/document/product/647/111146\"},{\"id\":111147,\"title\":\"iOS\u0026Mac\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":84244,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84244\"},{\"id\":84246,\"title\":\"TUIRoomEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84246\"},{\"id\":84247,\"title\":\"TUIRoomObserver\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84247\"},{\"id\":104232,\"title\":\"TUIRoomDeviceManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104232\"},{\"id\":109421,\"title\":\"TUIConferenceListManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109421\"},{\"id\":110508,\"title\":\"TUILiveConnectionManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110508\"},{\"id\":111565,\"title\":\"TUILiveBattleManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111565\"},{\"id\":107124,\"title\":\"TUILiveListManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107124\"},{\"id\":98502,\"title\":\"TUICommonDefine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/98502\"},{\"id\":84248,\"title\":\"TUIRoomDefine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84248\"},{\"id\":104233,\"title\":\"废弃接口\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104233\"}],\"link\":\"/document/product/647/111147\"},{\"id\":111148,\"title\":\"uni-app(小程序)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":98554,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/98554\"},{\"id\":98556,\"title\":\"TUIRoomEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/98556\"},{\"id\":98557,\"title\":\"TUIRoomEvents\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/98557\"},{\"id\":98558,\"title\":\"TUIRoomEngine Defines\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/98558\"}],\"link\":\"/document/product/647/111148\"},{\"id\":111149,\"title\":\"uni-app(客户端)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107134,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107134\"},{\"id\":107135,\"title\":\"TUIRoomEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107135\"},{\"id\":107136,\"title\":\"TUIRoomEvents\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107136\"},{\"id\":107137,\"title\":\"TUIRoomEngine Defines\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107137\"}],\"link\":\"/document/product/647/111149\"},{\"id\":111150,\"title\":\"Flutter\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":94550,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94550\"},{\"id\":94551,\"title\":\"TUIRoomEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94551\"},{\"id\":94552,\"title\":\"TUIRoomObserver\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94552\"},{\"id\":104260,\"title\":\"TUIRoomDeviceManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104260\"},{\"id\":109489,\"title\":\"TUIConferenceListManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109489\"},{\"id\":107126,\"title\":\"TUILiveListManager\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107126\"},{\"id\":94553,\"title\":\"类型定义\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/94553\"},{\"id\":104261,\"title\":\"废弃接口\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104261\"}],\"link\":\"/document/product/647/111150\"},{\"id\":111151,\"title\":\"Electron(Windows\u0026Mac)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":84263,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84263\"},{\"id\":84265,\"title\":\"TUIRoomEngine\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84265\"},{\"id\":84266,\"title\":\"TUIRoomEvent\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84266\"},{\"id\":84267,\"title\":\"TUIRoomEngine Defines\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84267\"}],\"link\":\"/document/product/647/111151\"}],\"link\":\"/document/product/647/111143\"}],\"link\":\"/document/product/647/111141\"},{\"id\":36695,\"title\":\"服务端 API \",\"type\":\"directory\",\"docType\":\"api\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_36695_cn.pdf\",\"children\":[{\"id\":37085,\"title\":\"更新历史\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37085\"},{\"id\":37077,\"title\":\"简介\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37077\"},{\"id\":37078,\"title\":\"API 概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37078\"},{\"id\":37079,\"title\":\"调用方式\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":37080,\"title\":\"请求结构\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37080\"},{\"id\":37081,\"title\":\"公共参数\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37081\"},{\"id\":37082,\"title\":\"签名方法 v3\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37082\"},{\"id\":37083,\"title\":\"签名方法\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37083\"},{\"id\":37084,\"title\":\"返回结果\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37084\"},{\"id\":78265,\"title\":\"参数类型\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/78265\"}],\"link\":\"/document/product/647/37079\"},{\"id\":37086,\"title\":\"房间管理相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":40496,\"title\":\"移出用户\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/40496\"},{\"id\":50089,\"title\":\"解散房间\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50089\"},{\"id\":50426,\"title\":\"移出用户(字符串房间号)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50426\"},{\"id\":37088,\"title\":\"解散房间(字符串房间号)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37088\"}],\"link\":\"/document/product/647/37086\"},{\"id\":44049,\"title\":\"通话质量监控相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":77745,\"title\":\"查询历史房间列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/77745\"},{\"id\":77742,\"title\":\"查询详细事件\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/77742\"},{\"id\":77746,\"title\":\"查询历史用户列表与通话指标\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/77746\"},{\"id\":77741,\"title\":\"查询历史用户列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/77741\"},{\"id\":77744,\"title\":\"查询历史房间和用户数\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/77744\"}],\"link\":\"/document/product/647/44049\"},{\"id\":44439,\"title\":\"转推相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":81479,\"title\":\"启动转推任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81479\"},{\"id\":81477,\"title\":\"更新转推任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81477\"},{\"id\":81478,\"title\":\"停止转推任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81478\"}],\"link\":\"/document/product/647/44439\"},{\"id\":73782,\"title\":\"云端录制相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":73786,\"title\":\"开始云端录制\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/73786\"},{\"id\":73785,\"title\":\"停止云端录制任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/73785\"},{\"id\":73784,\"title\":\"查询云端录制状态\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/73784\"},{\"id\":73783,\"title\":\"更新云端录制任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/73783\"}],\"link\":\"/document/product/647/73782\"},{\"id\":81424,\"title\":\"用量统计相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":81425,\"title\":\"查询TRTC音视频用量\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81425\"},{\"id\":81427,\"title\":\"查询TRTC录制用量\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81427\"},{\"id\":81428,\"title\":\"查询TRTC混流转码用量\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81428\"},{\"id\":81426,\"title\":\"查询TRTC旁路转推用量\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81426\"},{\"id\":49982,\"title\":\"查询云端录制计费时长(旧)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/49982\"},{\"id\":89181,\"title\":\"查询TRTC音视频房间维度用量\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/89181\"}],\"link\":\"/document/product/647/81424\"},{\"id\":82401,\"title\":\"监控仪表盘查询相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":97310,\"title\":\"查询TRTC实时监控规模数据\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/97310\"},{\"id\":97440,\"title\":\"查询TRTC实时监控质量数据\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/97440\"},{\"id\":97297,\"title\":\"查询TRTC数据大盘规模数据\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/97297\"},{\"id\":97441,\"title\":\"查询TRTC数据大盘质量相关数据\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/97441\"}],\"link\":\"/document/product/647/82401\"},{\"id\":101870,\"title\":\"输入在线媒体流相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":101872,\"title\":\"开启输入在线媒体流\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101872\"},{\"id\":101871,\"title\":\"停止输入在线媒体流\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101871\"},{\"id\":101873,\"title\":\"查询输入在线媒体流\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101873\"},{\"id\":110076,\"title\":\"更新输入在线媒体流\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/110076\"}],\"link\":\"/document/product/647/101870\"},{\"id\":104539,\"title\":\"页面录制相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104541,\"title\":\"开始页面录制\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104541\"},{\"id\":104542,\"title\":\"查询页面录制\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104542\"},{\"id\":104540,\"title\":\"停止页面录制\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104540\"}],\"link\":\"/document/product/647/104539\"},{\"id\":106489,\"title\":\"AI服务相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":106492,\"title\":\"开始AI转录任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106492\"},{\"id\":106493,\"title\":\"查询AI转录任务状态\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106493\"},{\"id\":106491,\"title\":\"停止AI转录任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106491\"}],\"link\":\"/document/product/647/106489\"},{\"id\":103369,\"title\":\"旧版相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":44270,\"title\":\"启动云端混流(旧)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/44270\"},{\"id\":44269,\"title\":\"结束云端混流(旧)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/44269\"},{\"id\":50236,\"title\":\"启动云端混流(字符串房间号)(旧)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50236\"},{\"id\":50235,\"title\":\"结束云端混流(字符串房间号)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50235\"},{\"id\":54689,\"title\":\"上传图片\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/54689\"},{\"id\":54686,\"title\":\"修改图片\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/54686\"},{\"id\":54687,\"title\":\"查询图片\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/54687\"},{\"id\":54688,\"title\":\"删除图片\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/54688\"}],\"link\":\"/document/product/647/103369\"},{\"id\":113066,\"title\":\"审核相关接口\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":113068,\"title\":\"创建基础审核任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113068\"},{\"id\":113067,\"title\":\"停止基础审核任务\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/113067\"}],\"link\":\"/document/product/647/113066\"},{\"id\":44055,\"title\":\"数据结构\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/44055\"},{\"id\":37089,\"title\":\"错误码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/37089\"},{\"id\":44915,\"title\":\"附录\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":44916,\"title\":\"事件 ID 映射表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/44916\"}],\"link\":\"/document/product/647/44915\"}],\"link\":\"/document/product/647/36695\"},{\"id\":32227,\"title\":\"高级功能\",\"type\":\"directory\",\"docType\":\"practice\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_32227_cn.pdf\",\"children\":[{\"id\":84721,\"title\":\"发布音视频流到直播 CDN\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/84721\"},{\"id\":76497,\"title\":\"实现云端录制与回放\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/76497\"},{\"id\":111748,\"title\":\"同时发起云端录制与转推\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111748\"},{\"id\":106894,\"title\":\"实现页面录制\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106894\"},{\"id\":112562,\"title\":\"实现 AI 降噪\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/112562\"},{\"id\":102957,\"title\":\"输入媒体流进房\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/102957\"},{\"id\":111507,\"title\":\"视频截图上传\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111507\"},{\"id\":100602,\"title\":\"使用虚拟背景\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":105416,\"title\":\"iOS\u0026Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105416\"},{\"id\":100603,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/100603\"}],\"link\":\"/document/product/647/100602\"},{\"id\":108902,\"title\":\"语音转文字\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/108902\"},{\"id\":74710,\"title\":\"使用美颜特效\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":59129,\"title\":\"腾讯特效引擎\\t\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/59129\"},{\"id\":68504,\"title\":\"SDK 功能说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/68504\"},{\"id\":68505,\"title\":\" SDK 集成指引(iOS)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/68505\"},{\"id\":68506,\"title\":\"SDK 集成指引(Android)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/68506\"},{\"id\":82647,\"title\":\"SDK 集成指引(Web)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82647\"}],\"link\":\"/document/product/647/74710\"},{\"id\":101358,\"title\":\"实现跨房连麦PK\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":101359,\"title\":\"Android\u0026IOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101359\"},{\"id\":101360,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/101360\"},{\"id\":105239,\"title\":\"服务端\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105239\"}],\"link\":\"/document/product/647/101358\"},{\"id\":81112,\"title\":\"监听服务端事件回调\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":51586,\"title\":\"房间与媒体回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/51586\"},{\"id\":88552,\"title\":\"旁路转推回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/88552\"},{\"id\":81113,\"title\":\"云端录制和页面录制回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/81113\"},{\"id\":102825,\"title\":\"输入在线媒体流回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/102825\"},{\"id\":109686,\"title\":\"AI 实时对话与语音转文字回调\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/109686\"},{\"id\":90450,\"title\":\"签名校验示例\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/90450\"}],\"link\":\"/document/product/647/81112\"},{\"id\":69072,\"title\":\"音视频内容安全审核\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":69055,\"title\":\"自动审核接入\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/69055\"},{\"id\":69054,\"title\":\"手动审核接入\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/69054\"}],\"link\":\"/document/product/647/69072\"},{\"id\":106173,\"title\":\"媒体流私有加密\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106173\"},{\"id\":106731,\"title\":\"分层编码与兴趣区域编码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106731\"},{\"id\":32240,\"title\":\"高级权限控制\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32240\"},{\"id\":32241,\"title\":\"发送和接收消息\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32241\"},{\"id\":74687,\"title\":\"自定义视频采集和渲染\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":34066,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/34066\"},{\"id\":74691,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74691\"}],\"link\":\"/document/product/647/74687\"},{\"id\":74688,\"title\":\"自定义音频采集和播放\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":74692,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74692\"},{\"id\":74693,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74693\"},{\"id\":102766,\"title\":\"Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/102766\"}],\"link\":\"/document/product/647/74688\"},{\"id\":74690,\"title\":\"测试硬件设备\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32238,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32238\"},{\"id\":74695,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74695\"}],\"link\":\"/document/product/647/74690\"},{\"id\":74689,\"title\":\"测试网络质量\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":32239,\"title\":\"Android\u0026iOS\u0026Windows\u0026Mac\u0026Flutter\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32239\"},{\"id\":74694,\"title\":\"Web\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/74694\"}],\"link\":\"/document/product/647/74689\"},{\"id\":46768,\"title\":\"资源访问管理\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":46764,\"title\":\"访问管理综述\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/46764\"},{\"id\":46765,\"title\":\"可授权的资源及操作\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/46765\"},{\"id\":46766,\"title\":\"预设策略\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/46766\"},{\"id\":46767,\"title\":\"自定义策略\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/46767\"}],\"link\":\"/document/product/647/46768\"}],\"link\":\"/document/product/647/32227\"},{\"id\":32229,\"title\":\"控制台指南\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_32229_cn.pdf\",\"children\":[{\"id\":50488,\"title\":\"概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50488\"},{\"id\":50766,\"title\":\"应用管理\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":50493,\"title\":\"创建应用\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50493\"},{\"id\":50771,\"title\":\"搜索应用\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50771\"},{\"id\":50767,\"title\":\"应用概览\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50767\"},{\"id\":91036,\"title\":\"功能配置\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":50768,\"title\":\"基础功能(转推与旧录制)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50768\"},{\"id\":91037,\"title\":\"增值功能\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/91037\"}],\"link\":\"/document/product/647/91036\"},{\"id\":89852,\"title\":\"录制管理(新录制)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/89852\"},{\"id\":52428,\"title\":\"回调配置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/52428\"},{\"id\":77791,\"title\":\"内容安全审核\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/77791\"},{\"id\":50769,\"title\":\"素材管理\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50769\"}],\"link\":\"/document/product/647/50766\"},{\"id\":50492,\"title\":\"时长包管理\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50492\"},{\"id\":50662,\"title\":\"用量统计\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":50489,\"title\":\"音视频互动\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50489\"},{\"id\":50663,\"title\":\"云端录制\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50663\"},{\"id\":65928,\"title\":\"云端混流转码\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/65928\"},{\"id\":80074,\"title\":\"旁路转推\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80074\"},{\"id\":88113,\"title\":\"仪表盘用量\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/88113\"}],\"link\":\"/document/product/647/50662\"},{\"id\":50646,\"title\":\"监控仪表盘\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":72847,\"title\":\"房间通话调查\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":50490,\"title\":\"查看通话列表\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50490\"},{\"id\":50647,\"title\":\"通话详情\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50647\"},{\"id\":50648,\"title\":\"全链路详情\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50648\"}],\"link\":\"/document/product/647/72847\"},{\"id\":72178,\"title\":\"实时监控\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/72178\"},{\"id\":80474,\"title\":\"数据大盘\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80474\"},{\"id\":95839,\"title\":\"告警设置\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/95839\"}],\"link\":\"/document/product/647/50646\"},{\"id\":77790,\"title\":\"内容审核监控\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/77790\"},{\"id\":50685,\"title\":\"开发辅助\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":50491,\"title\":\"快速跑通 Demo\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50491\"},{\"id\":50686,\"title\":\"UserSig 生成与校验\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/50686\"},{\"id\":103419,\"title\":\"RTMP地址生成器\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/103419\"}],\"link\":\"/document/product/647/50685\"},{\"id\":107138,\"title\":\"TRTC云助手\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":107139,\"title\":\"终端日志排障\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107139\"},{\"id\":107140,\"title\":\"迁移辅助\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/107140\"}],\"link\":\"/document/product/647/107138\"}],\"link\":\"/document/product/647/32229\"},{\"id\":104398,\"title\":\"解决方案\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_104398_cn.pdf\",\"children\":[{\"id\":104719,\"title\":\"第三方服务迁移\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104720,\"title\":\"Agora\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104721,\"title\":\"迁移指引\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104722,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104722\"},{\"id\":104723,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104723\"}],\"link\":\"/document/product/647/104721\"},{\"id\":104724,\"title\":\"API 参考\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":104725,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104725\"},{\"id\":104726,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/104726\"}],\"link\":\"/document/product/647/104724\"},{\"id\":106174,\"title\":\"第三方美颜\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":106175,\"title\":\"Android\u0026iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/106175\"}],\"link\":\"/document/product/647/106174\"}],\"link\":\"/document/product/647/104720\"}],\"link\":\"/document/product/647/104719\"},{\"id\":59401,\"title\":\"实时合唱\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_59401_cn.pdf\",\"children\":[{\"id\":82176,\"title\":\"组件介绍(TUIKaraoke)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82176\"},{\"id\":82177,\"title\":\"快速集成(TUIKaraoke)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":82178,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82178\"},{\"id\":82179,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82179\"}],\"link\":\"/document/product/647/82177\"},{\"id\":82180,\"title\":\"方案介绍(TUIKaraoke)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":82181,\"title\":\"实现步骤\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82181\"},{\"id\":82182,\"title\":\"歌曲同步\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":82183,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82183\"},{\"id\":82184,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82184\"}],\"link\":\"/document/product/647/82182\"},{\"id\":82185,\"title\":\"歌词同步\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":82186,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82186\"},{\"id\":82187,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82187\"}],\"link\":\"/document/product/647/82185\"},{\"id\":82188,\"title\":\"人声同步\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":82189,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82189\"},{\"id\":82190,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82190\"}],\"link\":\"/document/product/647/82188\"},{\"id\":82191,\"title\":\"混流方案\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":82192,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82192\"},{\"id\":82193,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82193\"}],\"link\":\"/document/product/647/82191\"}],\"link\":\"/document/product/647/82180\"},{\"id\":82194,\"title\":\"API 参考 (TUIKaraoke)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":82195,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82195\"},{\"id\":82196,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82196\"}],\"link\":\"/document/product/647/82194\"},{\"id\":82197,\"title\":\"常见问题(TUIKaraoke)\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"\",\"children\":[{\"id\":82198,\"title\":\"Android\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82198\"},{\"id\":82199,\"title\":\"iOS\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/82199\"}],\"link\":\"/document/product/647/82197\"}],\"link\":\"/document/product/647/59401\"}],\"link\":\"/document/product/647/104398\"},{\"id\":32231,\"title\":\"常见问题\",\"type\":\"directory\",\"docType\":\"faq\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_32231_cn.pdf\",\"children\":[{\"id\":111505,\"title\":\"热点问题\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/111505\"},{\"id\":43018,\"title\":\"计费相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/43018\"},{\"id\":43020,\"title\":\"功能相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/43020\"},{\"id\":34399,\"title\":\"应对防火墙限制相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/34399\"},{\"id\":17275,\"title\":\"用户鉴权\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/17275\"},{\"id\":80459,\"title\":\"房间与用户管理相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/80459\"},{\"id\":43019,\"title\":\"Android 与 iOS 相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/43019\"},{\"id\":45558,\"title\":\"Web 端相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/45558\"},{\"id\":45532,\"title\":\"小程序端相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/45532\"},{\"id\":51623,\"title\":\"Flutter 相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/51623\"},{\"id\":62562,\"title\":\"Electron 相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/62562\"},{\"id\":62620,\"title\":\"混流与录制相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/62620\"},{\"id\":62621,\"title\":\"音视频质量相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/62621\"},{\"id\":32281,\"title\":\"iLiveSDK 迁移相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/32281\"},{\"id\":34400,\"title\":\"缩减安装包体积相关\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/34400\"},{\"id\":43021,\"title\":\"其他问题\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/43021\"}],\"link\":\"/document/product/647/32231\"},{\"id\":75992,\"title\":\"旧版文档\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_75992_cn.pdf\",\"children\":[{\"id\":16823,\"title\":\"云端录制与回放(旧)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/16823\"},{\"id\":16827,\"title\":\"云端混流转码(旧)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/16827\"},{\"id\":16826,\"title\":\"CDN直播观看(旧)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/16826\"},{\"id\":45892,\"title\":\"云端录制计费说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/45892\"},{\"id\":59756,\"title\":\"开启后付费\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/59756\"},{\"id\":97716,\"title\":\"uni-app(小程序)快速接入(旧)\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/97716\"}],\"link\":\"/document/product/647/75992\"},{\"id\":57606,\"title\":\"协议与策略\",\"type\":\"directory\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_57606_cn.pdf\",\"children\":[{\"id\":68330,\"title\":\"安全合规认证\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/68330\"},{\"id\":86362,\"title\":\"信息安全说明\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/86362\"},{\"id\":86363,\"title\":\"安全白皮书\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/86363\"},{\"id\":93052,\"title\":\"服务等级协议\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/93052\"},{\"id\":57574,\"title\":\"实时音视频 TRTC SDK 个人信息保护规则\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/57574\"},{\"id\":105339,\"title\":\"苹果隐私策略:PrivacyInfo.xcprivacy\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/105339\"},{\"id\":97575,\"title\":\"合规使用指南\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"\",\"link\":\"/document/product/647/97575\"}],\"link\":\"/document/product/647/57606\"},{\"id\":19906,\"title\":\"联系我们\",\"type\":\"page\",\"docType\":\"default\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_19906_cn.pdf\",\"link\":\"/document/product/647/19906\"},{\"id\":17230,\"title\":\"词汇表\",\"type\":\"page\",\"docType\":\"glossary\",\"pdfUrl\":\"https://main.qcloudimg.com/raw/document/product/pdf/647_17230_cn.pdf\",\"link\":\"/document/product/647/17230\"}],\"categoryId\":647,\"title\":\"实时音视频\",\"lang\":\"zh\"},\"searchDisable\":false,\"subtitle\":\"实时音视频\",\"subEntry\":\"/document/product/647\",\"searchPlaceholder\":\"搜索本产品内容\",\"hideCatalogue\":false},\"navbar\":{\"title\":\"实时音视频\",\"expandable\":false},\"plugins\":{\"popupNav\":{\"data\":[[{\"id\":211,\"pid\":0,\"groupId\":115,\"iconUrl\":\"https://main.qcloudimg.com/image/product/500/16_16/blue.svg\",\"url\":\"\",\"slug\":\"compute\",\"title\":\"计算\",\"dictId\":500,\"children\":[{\"id\":213,\"pid\":211,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2000/32_32/blue.svg\",\"url\":\"/document/product/213\",\"slug\":\"cvm\",\"title\":\"云服务器\",\"dictId\":2000},{\"id\":1207,\"pid\":211,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/raw/65109c384857272e788801b35f9d9a60.svg\",\"url\":\"/document/product/1207\",\"slug\":\"lighthouse\",\"title\":\"轻量应用服务器\",\"dictId\":2486},{\"id\":386,\"pid\":211,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2352/32_32/blue.svg\",\"url\":\"/document/product/386\",\"slug\":\"cbm\",\"title\":\"裸金属云服务器\",\"dictId\":2004},{\"id\":560,\"pid\":211,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2001/32_32/blue.svg\",\"url\":\"/document/product/560\",\"slug\":\"gpu\",\"title\":\"GPU 云服务器\",\"dictId\":2001},{\"id\":565,\"pid\":211,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2002/32_32/blue.svg\",\"url\":\"/document/product/565\",\"slug\":\"fpga\",\"title\":\"FPGA 云服务器\",\"dictId\":2002},{\"id\":416,\"pid\":211,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2003/32_32/blue.svg\",\"url\":\"/document/product/416\",\"slug\":\"cdh\",\"title\":\"专用宿主机\",\"dictId\":2003},{\"id\":377,\"pid\":211,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2008/32_32/blue.svg\",\"url\":\"/document/product/377\",\"slug\":\"as\",\"title\":\"弹性伸缩\",\"dictId\":2008},{\"id\":1340,\"pid\":211,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2616/32_32/blue.svg\",\"url\":\"/document/product/1340\",\"slug\":\"tat\",\"title\":\"自动化助手\",\"dictId\":2616}]},{\"id\":1396,\"pid\":0,\"groupId\":115,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2661/16_16/blue.svg\",\"url\":\"\",\"slug\":\"operating-system-catalog\",\"title\":\"操作系统与工具\",\"dictId\":2661,\"children\":[{\"id\":1397,\"pid\":1396,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2662/32_32/blue.svg\",\"url\":\"/document/product/1397\",\"slug\":\"ts\",\"title\":\"TencentOS Server\",\"dictId\":2662},{\"id\":1573,\"pid\":1396,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1573\",\"slug\":\"taco\",\"title\":\"计算加速套件 TACO Kit\",\"dictId\":2868},{\"id\":1149,\"pid\":1396,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2422/32_32/blue.svg\",\"url\":\"/document/product/1149\",\"slug\":\"tkjdk\",\"title\":\"腾讯 Kona\",\"dictId\":2422}]},{\"id\":1675,\"pid\":0,\"groupId\":115,\"iconUrl\":\"https://qcloudimg.tencent-cloud.cn/raw/9e080474952f05a70d108ff4f5b5ac88.svg\",\"url\":\"\",\"slug\":\"high-performance-computing-catalog\",\"title\":\"高性能计算\",\"dictId\":2980,\"children\":[{\"id\":1646,\"pid\":1675,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1646\",\"slug\":\"hcc\",\"title\":\"高性能计算集群\",\"dictId\":2948},{\"id\":1527,\"pid\":1675,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2810/32_32/blue.svg\",\"url\":\"/document/product/1527\",\"slug\":\"thpc\",\"title\":\"高性能计算平台\",\"dictId\":2810},{\"id\":1721,\"pid\":1675,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1721\",\"slug\":\"hai\",\"title\":\"高性能应用服务 HAI\",\"dictId\":3032},{\"id\":599,\"pid\":1675,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2011/32_32/blue.svg\",\"url\":\"/document/product/599\",\"slug\":\"batch\",\"title\":\"批量计算\",\"dictId\":2011}]},{\"id\":1676,\"pid\":0,\"groupId\":115,\"iconUrl\":\"https://qcloudimg.tencent-cloud.cn/raw/e404a0a2ca1ac2d64df440e6600fd764.svg\",\"url\":\"\",\"slug\":\"distributed-cloud-catalog\",\"title\":\"分布式云\",\"dictId\":2981,\"children\":[{\"id\":1346,\"pid\":1676,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2622/32_32/blue.svg\",\"url\":\"/document/product/1346\",\"slug\":\"cdc\",\"title\":\"本地专用集群\",\"dictId\":2622},{\"id\":1629,\"pid\":1676,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1629\",\"slug\":\"cdz\",\"title\":\"专属可用区\",\"dictId\":2922},{\"id\":1379,\"pid\":1676,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2649/32_32/blue.svg\",\"url\":\"/document/product/1379\",\"slug\":\"edgezone\",\"title\":\"边缘可用区\",\"dictId\":2649},{\"id\":1448,\"pid\":1676,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2726/32_32/blue.svg\",\"url\":\"/document/product/1448\",\"slug\":\"chc\",\"title\":\"云托付物理服务器\",\"dictId\":2726}]},{\"id\":458,\"pid\":0,\"groupId\":117,\"iconUrl\":\"https://main.qcloudimg.com/image/product/504/16_16/blue.svg\",\"url\":\"\",\"slug\":\"networking-catalog\",\"title\":\"云上网络\",\"dictId\":504,\"children\":[{\"id\":214,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2039/32_32/blue.svg\",\"url\":\"/document/product/214\",\"slug\":\"clb\",\"title\":\"负载均衡\",\"dictId\":2039},{\"id\":1782,\"pid\":458,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1782\",\"slug\":\"gwlb\",\"title\":\"网关负载均衡\",\"dictId\":3130},{\"id\":215,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2040/32_32/blue.svg\",\"url\":\"/document/product/215\",\"slug\":\"vpc\",\"title\":\"私有网络\",\"dictId\":2040},{\"id\":576,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2043/32_32/blue.svg\",\"url\":\"/document/product/576\",\"slug\":\"eni\",\"title\":\"弹性网卡\",\"dictId\":2043},{\"id\":552,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2044/32_32/blue.svg\",\"url\":\"/document/product/552\",\"slug\":\"nat\",\"title\":\"NAT 网关\",\"dictId\":2044},{\"id\":682,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2047/32_32/blue.svg\",\"url\":\"/document/product/682\",\"slug\":\"fl\",\"title\":\"网络流日志\",\"dictId\":2047},{\"id\":684,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2049/32_32/blue.svg\",\"url\":\"/document/product/684\",\"slug\":\"bwp\",\"title\":\"共享带宽包\",\"dictId\":2049},{\"id\":1171,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2451/32_32/blue.svg\",\"url\":\"/document/product/1171\",\"slug\":\"tp\",\"title\":\"共享流量包\",\"dictId\":2451},{\"id\":1142,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2419/32_32/blue.svg\",\"url\":\"/document/product/1142\",\"slug\":\"eipv6\",\"title\":\"弹性公网 IPv6\",\"dictId\":2419},{\"id\":1199,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2394/32_32/blue.svg\",\"url\":\"/document/product/1199\",\"slug\":\"eip\",\"title\":\"弹性公网 IP\",\"dictId\":2394},{\"id\":1451,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2729/32_32/blue.svg\",\"url\":\"/document/product/1451\",\"slug\":\"pls\",\"title\":\"私有连接\",\"dictId\":2729},{\"id\":644,\"pid\":458,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2048/32_32/blue.svg\",\"url\":\"/document/product/644\",\"slug\":\"aia\",\"title\":\"Anycast 公网加速\",\"dictId\":2048}]},{\"id\":1702,\"pid\":0,\"groupId\":117,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3003/16_16/blue.svg\",\"url\":\"\",\"slug\":\"hybrid-cloud-network-catalog\",\"title\":\"混合云网络\",\"dictId\":3003,\"children\":[{\"id\":216,\"pid\":1702,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2041/32_32/blue.svg\",\"url\":\"/document/product/216\",\"slug\":\"dc\",\"title\":\"专线接入\",\"dictId\":2041},{\"id\":877,\"pid\":1702,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2042/32_32/blue.svg\",\"url\":\"/document/product/877\",\"slug\":\"ccn\",\"title\":\"云联网\",\"dictId\":2042},{\"id\":553,\"pid\":1702,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2045/32_32/blue.svg\",\"url\":\"/document/product/553\",\"slug\":\"pc\",\"title\":\"对等连接\",\"dictId\":2045},{\"id\":554,\"pid\":1702,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2046/32_32/blue.svg\",\"url\":\"/document/product/554\",\"slug\":\"vpn\",\"title\":\"VPN 连接\",\"dictId\":2046},{\"id\":608,\"pid\":1702,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2063/32_32/blue.svg\",\"url\":\"/document/product/608\",\"slug\":\"gaap\",\"title\":\"全球应用加速\",\"dictId\":2063},{\"id\":1277,\"pid\":1702,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2552/32_32/blue.svg\",\"url\":\"/document/product/1277\",\"slug\":\"sas\",\"title\":\"SD-WAN 接入服务\",\"dictId\":2552},{\"id\":1687,\"pid\":1702,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1687\",\"slug\":\"csxg\",\"title\":\"5G入云服务\",\"dictId\":2985}]},{\"id\":226,\"pid\":0,\"groupId\":102,\"iconUrl\":\"https://main.qcloudimg.com/image/product/520/16_16/blue.svg\",\"url\":\"\",\"slug\":\"data-analysis-catalog\",\"title\":\"数据分析\",\"dictId\":520,\"children\":[{\"id\":589,\"pid\":226,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2129/32_32/blue.svg\",\"url\":\"/document/product/589\",\"slug\":\"emr\",\"title\":\"弹性 MapReduce\",\"dictId\":2129},{\"id\":845,\"pid\":226,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2133/32_32/blue.svg\",\"url\":\"/document/product/845\",\"slug\":\"es\",\"title\":\"Elasticsearch Service\",\"dictId\":2133},{\"id\":878,\"pid\":226,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2131/32_32/blue.svg\",\"url\":\"/document/product/878\",\"slug\":\"tchousep\",\"title\":\"腾讯云数据仓库 TCHouse-P\",\"dictId\":2131},{\"id\":1299,\"pid\":226,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2573/32_32/blue.svg\",\"url\":\"/document/product/1299\",\"slug\":\"tchousec\",\"title\":\"腾讯云数据仓库 TCHouse-C\",\"dictId\":2573},{\"id\":1387,\"pid\":226,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2658/32_32/blue.svg\",\"url\":\"/document/product/1387\",\"slug\":\"tchoused\",\"title\":\"腾讯云数据仓库 TCHouse-D\",\"dictId\":2658},{\"id\":849,\"pid\":226,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2132/32_32/blue.svg\",\"url\":\"/document/product/849\",\"slug\":\"oceanus\",\"title\":\"流计算 Oceanus\",\"dictId\":2132},{\"id\":1342,\"pid\":226,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2618/32_32/blue.svg\",\"url\":\"/document/product/1342\",\"slug\":\"dlc\",\"title\":\"数据湖计算 DLC\",\"dictId\":2618}]},{\"id\":606,\"pid\":0,\"groupId\":102,\"iconUrl\":\"https://main.qcloudimg.com/image/product/521/16_16/blue.svg\",\"url\":\"\",\"slug\":\"data-development-and-governance-catalog\",\"title\":\"数据开发与治理\",\"dictId\":521,\"children\":[{\"id\":273,\"pid\":606,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2128/32_32/blue.svg\",\"url\":\"/document/product/273\",\"slug\":\"tbds\",\"title\":\"大数据处理套件 TBDS\",\"dictId\":2128},{\"id\":1267,\"pid\":606,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2507/32_32/blue.svg\",\"url\":\"/document/product/1267\",\"slug\":\"wedata\",\"title\":\"数据开发治理平台 WeData\",\"dictId\":2507}]},{\"id\":605,\"pid\":0,\"groupId\":102,\"iconUrl\":\"https://main.qcloudimg.com/image/product/522/16_16/blue.svg\",\"url\":\"\",\"slug\":\"data-application-catalog\",\"title\":\"数据应用与可视化\",\"dictId\":522,\"children\":[{\"id\":548,\"pid\":605,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2200/32_32/blue.svg\",\"url\":\"/document/product/548\",\"slug\":\"tpns\",\"title\":\"移动推送\",\"dictId\":2200},{\"id\":590,\"pid\":605,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2135/32_32/blue.svg\",\"url\":\"/document/product/590\",\"slug\":\"bi\",\"title\":\"腾讯云 BI\",\"dictId\":2135},{\"id\":665,\"pid\":605,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2136/32_32/blue.svg\",\"url\":\"/document/product/665\",\"slug\":\"tcv\",\"title\":\"腾讯云图数据可视化\",\"dictId\":2136},{\"id\":1269,\"pid\":605,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2134/32_32/blue.svg\",\"url\":\"/document/product/1269\",\"slug\":\"raydata\",\"title\":\"大数据可视交互系统\",\"dictId\":2134},{\"id\":1609,\"pid\":605,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1609\",\"slug\":\"web\",\"title\":\"数字孪生可视化网页版 RayData Web\",\"dictId\":2910},{\"id\":1652,\"pid\":605,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1652\",\"slug\":\"plus\",\"title\":\"数字孪生可视化专业版 RayData Plus\",\"dictId\":2954}]},{\"id\":221,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/510/16_16/blue.svg\",\"url\":\"\",\"slug\":\"network-security\",\"title\":\"安全运营\",\"dictId\":510,\"children\":[{\"id\":1077,\"pid\":221,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2122/32_32/blue.svg\",\"url\":\"/document/product/1077\",\"slug\":\"PSG\",\"title\":\"网络入侵防护系统\",\"dictId\":2122},{\"id\":1010,\"pid\":221,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2081/32_32/blue.svg\",\"url\":\"/document/product/1010\",\"slug\":\"yje\",\"title\":\"高级威胁检测系统\",\"dictId\":2081},{\"id\":1013,\"pid\":221,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2084/32_32/blue.svg\",\"url\":\"/document/product/1013\",\"slug\":\"tics\",\"title\":\"威胁情报云查与本地引擎\",\"dictId\":2084},{\"id\":1011,\"pid\":221,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2119/32_32/blue.svg\",\"url\":\"/document/product/1011\",\"slug\":\"soc-private\",\"title\":\"安全运营中心\",\"dictId\":2119},{\"id\":1594,\"pid\":221,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1594\",\"slug\":\"tix\",\"title\":\"攻击面管理\",\"dictId\":2893},{\"id\":1720,\"pid\":221,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1720\",\"slug\":\"sdl\",\"title\":\"安全湖\",\"dictId\":3031}]},{\"id\":1051,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/519/16_16/blue.svg\",\"url\":\"\",\"slug\":\"mobile-security\",\"title\":\"应用安全\",\"dictId\":519,\"children\":[{\"id\":283,\"pid\":1051,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2125/32_32/blue.svg\",\"url\":\"/document/product/283\",\"slug\":\"ms\",\"title\":\"移动应用安全\",\"dictId\":2125},{\"id\":1444,\"pid\":1051,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2722/32_32/blue.svg\",\"url\":\"/document/product/1444\",\"slug\":\"asd\",\"title\":\"应用安全开发\",\"dictId\":2722},{\"id\":1483,\"pid\":1051,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1483\",\"slug\":\"bsca\",\"title\":\"软件成分分析\",\"dictId\":2757},{\"id\":1762,\"pid\":1051,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1762\",\"slug\":\"essas\",\"title\":\"嵌入式安全审计平台\",\"dictId\":3090}]},{\"id\":1047,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/516/16_16/blue.svg\",\"url\":\"\",\"slug\":\"cellular-data-security\",\"title\":\"业务安全\",\"dictId\":516,\"children\":[{\"id\":1110,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2102/32_32/blue.svg\",\"url\":\"/document/product/1110\",\"slug\":\"captcha\",\"title\":\"验证码\",\"dictId\":2102},{\"id\":1124,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2379/32_32/blue.svg\",\"url\":\"/document/product/1124\",\"slug\":\"tms\",\"title\":\"文本内容安全\",\"dictId\":2379},{\"id\":1125,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2380/32_32/blue.svg\",\"url\":\"/document/product/1125\",\"slug\":\"ims\",\"title\":\"图片内容安全\",\"dictId\":2380},{\"id\":1219,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2496/32_32/blue.svg\",\"url\":\"/document/product/1219\",\"slug\":\"ams\",\"title\":\"音频内容安全\",\"dictId\":2496},{\"id\":1265,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2541/32_32/blue.svg\",\"url\":\"/document/product/1265\",\"slug\":\"vm\",\"title\":\"视频内容安全\",\"dictId\":2541},{\"id\":1127,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2391/32_32/blue.svg\",\"url\":\"/document/product/1127\",\"slug\":\"smpn\",\"title\":\"营销号码安全\",\"dictId\":2391},{\"id\":1064,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2121/32_32/blue.svg\",\"url\":\"/document/product/1064\",\"slug\":\"bri\",\"title\":\"业务风险情报\",\"dictId\":2121},{\"id\":1192,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2469/32_32/blue.svg\",\"url\":\"/document/product/1192\",\"slug\":\"fele\",\"title\":\"联邦学习\",\"dictId\":2469},{\"id\":1310,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2583/32_32/blue.svg\",\"url\":\"/document/product/1310\",\"slug\":\"smop\",\"title\":\"腾讯安心用户运营平台\",\"dictId\":2583},{\"id\":1441,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2720/32_32/blue.svg\",\"url\":\"/document/product/1441\",\"slug\":\"ciam\",\"title\":\"账号风控平台\",\"dictId\":2720},{\"id\":1583,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1583\",\"slug\":\"uma\",\"title\":\"腾讯优码\",\"dictId\":2880},{\"id\":1031,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2297/32_32/blue.svg\",\"url\":\"/document/product/1031\",\"slug\":\"taf\",\"title\":\"流量反欺诈\",\"dictId\":2297},{\"id\":1343,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2619/32_32/blue.svg\",\"url\":\"/document/product/1343\",\"slug\":\"rce\",\"title\":\"全栈式风控引擎\",\"dictId\":2619},{\"id\":1628,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1628\",\"slug\":\"tds\",\"title\":\"设备安全\",\"dictId\":2924},{\"id\":654,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2126/32_32/blue.svg\",\"url\":\"/document/product/654\",\"slug\":\"ace\",\"title\":\"游戏安全\",\"dictId\":2126},{\"id\":653,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2220/32_32/blue.svg\",\"url\":\"/document/product/653\",\"slug\":\"spt\",\"title\":\"服务性能测试\",\"dictId\":2220},{\"id\":1223,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2495/32_32/blue.svg\",\"url\":\"/document/product/1223\",\"slug\":\"mmps\",\"title\":\"小程序安全\",\"dictId\":2495},{\"id\":369,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2222/32_32/blue.svg\",\"url\":\"/document/product/369\",\"slug\":\"sct\",\"title\":\"标准兼容测试\",\"dictId\":2222},{\"id\":579,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2223/32_32/blue.svg\",\"url\":\"/document/product/579\",\"slug\":\"ect\",\"title\":\"专家兼容测试\",\"dictId\":2223},{\"id\":585,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2224/32_32/blue.svg\",\"url\":\"/document/product/585\",\"slug\":\"rd\",\"title\":\"远程调试\",\"dictId\":2224},{\"id\":574,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2225/32_32/blue.svg\",\"url\":\"/document/product/574\",\"slug\":\"sr\",\"title\":\"手游安全测试\",\"dictId\":2225},{\"id\":1296,\"pid\":1047,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2570/32_32/blue.svg\",\"url\":\"/document/product/1296\",\"slug\":\"bma\",\"title\":\"品牌经营管家\",\"dictId\":2570}]},{\"id\":1050,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/518/16_16/blue.svg\",\"url\":\"\",\"slug\":\"cloud-security-catalog\",\"title\":\"云安全\",\"dictId\":518,\"children\":[{\"id\":1132,\"pid\":1050,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2402/32_32/blue.svg\",\"url\":\"/document/product/1132\",\"slug\":\"cfw\",\"title\":\"云防火墙\",\"dictId\":2402},{\"id\":627,\"pid\":1050,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2123/32_32/blue.svg\",\"url\":\"/document/product/627\",\"slug\":\"waf\",\"title\":\"Web 应用防火墙\",\"dictId\":2123},{\"id\":296,\"pid\":1050,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2087/32_32/blue.svg\",\"url\":\"/document/product/296\",\"slug\":\"hs\",\"title\":\"主机安全\",\"dictId\":2087},{\"id\":1285,\"pid\":1050,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2560/32_32/blue.svg\",\"url\":\"/document/product/1285\",\"slug\":\"tcss\",\"title\":\"容器安全服务\",\"dictId\":2560},{\"id\":664,\"pid\":1050,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2118/32_32/blue.svg\",\"url\":\"/document/product/664\",\"slug\":\"ssa\",\"title\":\"云安全中心\",\"dictId\":2118},{\"id\":1627,\"pid\":1050,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1627\",\"slug\":\"apis\",\"title\":\"API 安全治理\",\"dictId\":2923},{\"id\":692,\"pid\":1050,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2124/32_32/blue.svg\",\"url\":\"/document/product/692\",\"slug\":\"vss\",\"title\":\"漏洞扫描服务\",\"dictId\":2124}]},{\"id\":1044,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/513/16_16/blue.svg\",\"url\":\"\",\"slug\":\"data-security\",\"title\":\"数据安全\",\"dictId\":513,\"children\":[{\"id\":1087,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2093/32_32/blue.svg\",\"url\":\"/document/product/1087\",\"slug\":\"dsgc\",\"title\":\"数据安全治理中心\",\"dictId\":2093},{\"id\":1025,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2092/32_32/blue.svg\",\"url\":\"/document/product/1025\",\"slug\":\"cds-dasb\",\"title\":\"运维安全中心(堡垒机)\",\"dictId\":2092},{\"id\":856,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2090/32_32/blue.svg\",\"url\":\"/document/product/856\",\"slug\":\"CDS\",\"title\":\"数据安全审计\",\"dictId\":2090},{\"id\":882,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2091/32_32/blue.svg\",\"url\":\"/document/product/882\",\"slug\":\"dmask\",\"title\":\"数据脱敏\",\"dictId\":2091},{\"id\":1084,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2299/32_32/blue.svg\",\"url\":\"/document/product/1084\",\"slug\":\"sslpod\",\"title\":\"证书监控 SSLPod\",\"dictId\":2299},{\"id\":639,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2089/32_32/blue.svg\",\"url\":\"/document/product/639\",\"slug\":\"cloudhsm\",\"title\":\"云加密机\",\"dictId\":2089},{\"id\":573,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2213/32_32/blue.svg\",\"url\":\"/document/product/573\",\"slug\":\"kms\",\"title\":\"密钥管理系统\",\"dictId\":2213},{\"id\":1140,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2424/32_32/blue.svg\",\"url\":\"/document/product/1140\",\"slug\":\"ssm\",\"title\":\"凭据管理系统\",\"dictId\":2424},{\"id\":1232,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2506/32_32/blue.svg\",\"url\":\"/document/product/1232\",\"slug\":\"cdcs\",\"title\":\"数据保险箱\",\"dictId\":2506},{\"id\":1369,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2640/32_32/blue.svg\",\"url\":\"/document/product/1369\",\"slug\":\"csc\",\"title\":\"代码签名证书\",\"dictId\":2640},{\"id\":1303,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2503/32_32/blue.svg\",\"url\":\"/document/product/1303\",\"slug\":\"casb\",\"title\":\"数据安全网关(云访问安全代理)\",\"dictId\":2503},{\"id\":1542,\"pid\":1044,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1542\",\"slug\":\"ccp\",\"title\":\"机密计算平台\",\"dictId\":2826}]},{\"id\":1048,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/517/16_16/blue.svg\",\"url\":\"\",\"slug\":\"security-services\",\"title\":\"安全服务\",\"dictId\":517,\"children\":[{\"id\":586,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2456/32_32/blue.svg\",\"url\":\"/document/product/586\",\"slug\":\"expert-service\",\"title\":\"安全专家服务\",\"dictId\":2456},{\"id\":1308,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2581/32_32/blue.svg\",\"url\":\"/document/product/1308\",\"slug\":\"mss\",\"title\":\"安全托管服务\",\"dictId\":2581},{\"id\":1549,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1549\",\"slug\":\"cirs\",\"title\":\"应急响应服务\",\"dictId\":2836},{\"id\":1574,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1574\",\"slug\":\"cadc\",\"title\":\"安全攻防对抗服务\",\"dictId\":2869},{\"id\":1562,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1562\",\"slug\":\"ciip\",\"title\":\"重要时期安全保障服务\",\"dictId\":2853},{\"id\":1489,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"1\",\"url\":\"/document/product/1489\",\"slug\":\"tpts\",\"title\":\"渗透测试服务\",\"dictId\":2835},{\"id\":1719,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1719\",\"slug\":\"bas\",\"title\":\"安全验证服务\",\"dictId\":3030},{\"id\":1755,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1755\",\"slug\":\"ctem\",\"title\":\"暴露面管理服务\",\"dictId\":3080},{\"id\":1758,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1758\",\"slug\":\"vgs\",\"title\":\"漏洞治理服务\",\"dictId\":3087},{\"id\":1767,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1767\",\"slug\":\"ras\",\"title\":\"风险评估服务\",\"dictId\":3094},{\"id\":1783,\"pid\":1048,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1783\",\"slug\":\"security-service-catalog\",\"title\":\"多云安全治理服务\",\"dictId\":517}]},{\"id\":1355,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2644/16_16/blue.svg\",\"url\":\"\",\"slug\":\"identity-security\",\"title\":\"身份安全\",\"dictId\":2644,\"children\":[{\"id\":1442,\"pid\":1355,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2721/32_32/blue.svg\",\"url\":\"/document/product/1442\",\"slug\":\"eiam\",\"title\":\"数字身份管控平台(员工版)\",\"dictId\":2721}]},{\"id\":1696,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3004/16_16/blue.svg\",\"url\":\"\",\"slug\":\"edge-security-catalog\",\"title\":\"边缘安全\",\"dictId\":3004,\"children\":[{\"id\":297,\"pid\":1696,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2075/32_32/blue.svg\",\"url\":\"/document/product/297\",\"slug\":\"ddos\",\"title\":\"DDoS 防护\",\"dictId\":2075}]},{\"id\":1697,\"pid\":0,\"groupId\":101,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3005/24_24/blue.svg\",\"url\":\"\",\"slug\":\"zero-trust-catalog\",\"title\":\"零信任\",\"dictId\":3005,\"children\":[{\"id\":1092,\"pid\":1697,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2228/32_32/blue.svg\",\"url\":\"/document/product/1092\",\"slug\":\"ioa\",\"title\":\"iOA 零信任安全管理系统\",\"dictId\":2228},{\"id\":1182,\"pid\":1697,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2462/32_32/blue.svg\",\"url\":\"/document/product/1182\",\"slug\":\"emm\",\"title\":\"企业移动管理\",\"dictId\":2462}]}],[{\"id\":1204,\"pid\":0,\"groupId\":116,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2478/16_16/blue.svg\",\"url\":\"\",\"slug\":\"container-catalog\",\"title\":\"容器\",\"dictId\":2478,\"children\":[{\"id\":457,\"pid\":1204,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2006/32_32/blue.svg\",\"url\":\"/document/product/457\",\"slug\":\"tke\",\"title\":\"容器服务\",\"dictId\":2006},{\"id\":1141,\"pid\":1204,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2426/32_32/blue.svg\",\"url\":\"/document/product/1141\",\"slug\":\"tcr\",\"title\":\"容器镜像服务\",\"dictId\":2426}]},{\"id\":1126,\"pid\":0,\"groupId\":116,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2387/16_16/blue.svg\",\"url\":\"\",\"slug\":\"serverless-catalog\",\"title\":\"Serverless\",\"dictId\":2387,\"children\":[{\"id\":583,\"pid\":1126,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2009/32_32/blue.svg\",\"url\":\"/document/product/583\",\"slug\":\"scf\",\"title\":\"云函数\",\"dictId\":2009},{\"id\":1154,\"pid\":1126,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2423/32_32/blue.svg\",\"url\":\"/document/product/1154\",\"slug\":\"sls\",\"title\":\"Serverless 应用中心\",\"dictId\":2423},{\"id\":1229,\"pid\":1126,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2508/32_32/blue.svg\",\"url\":\"/document/product/1229\",\"slug\":\"slshttp\",\"title\":\"Serverless HTTP 服务\",\"dictId\":2508},{\"id\":1242,\"pid\":1126,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2511/32_32/blue.svg\",\"url\":\"/document/product/1242\",\"slug\":\"ssr\",\"title\":\"Serverless SSR\",\"dictId\":2511}]},{\"id\":640,\"pid\":0,\"groupId\":116,\"iconUrl\":\"https://main.qcloudimg.com/image/product/501/16_16/blue.svg\",\"url\":\"\",\"slug\":\"message-queue-catalog\",\"title\":\"消息队列\",\"dictId\":501,\"children\":[{\"id\":597,\"pid\":640,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2013/32_32/blue.svg\",\"url\":\"/document/product/597\",\"slug\":\"ckafka\",\"title\":\"消息队列 CKafka 版\",\"dictId\":2013},{\"id\":1493,\"pid\":640,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2779/32_32/blue.svg\",\"url\":\"/document/product/1493\",\"slug\":\"trocket\",\"title\":\"消息队列 RocketMQ 版\",\"dictId\":2779},{\"id\":1495,\"pid\":640,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2778/32_32/blue.svg\",\"url\":\"/document/product/1495\",\"slug\":\"trabbit\",\"title\":\"消息队列 RabbitMQ 版\",\"dictId\":2778},{\"id\":1179,\"pid\":640,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2459/32_32/blue.svg\",\"url\":\"/document/product/1179\",\"slug\":\"tpulsar\",\"title\":\"消息队列 Pulsar 版\",\"dictId\":2777},{\"id\":1496,\"pid\":640,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2780/32_32/blue.svg\",\"url\":\"/document/product/1496\",\"slug\":\"tcmq\",\"title\":\"消息队列 CMQ 版\",\"dictId\":2780}]},{\"id\":1462,\"pid\":0,\"groupId\":116,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2738/16_16/blue.svg\",\"url\":\"\",\"slug\":\"microservice-catalog\",\"title\":\"微服务工具与平台\",\"dictId\":2738,\"children\":[{\"id\":628,\"pid\":1462,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2014/32_32/blue.svg\",\"url\":\"/document/product/628\",\"slug\":\"apigw\",\"title\":\"API 网关\",\"dictId\":2014},{\"id\":1261,\"pid\":1462,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2538/32_32/blue.svg\",\"url\":\"/document/product/1261\",\"slug\":\"tcm\",\"title\":\"服务网格\",\"dictId\":2538},{\"id\":1364,\"pid\":1462,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2634/32_32/blue.svg\",\"url\":\"/document/product/1364\",\"slug\":\"tse\",\"title\":\"微服务引擎 TSE\",\"dictId\":2634},{\"id\":1371,\"pid\":1462,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2642/32_32/blue.svg\",\"url\":\"/document/product/1371\",\"slug\":\"tem\",\"title\":\"弹性微服务\",\"dictId\":2642},{\"id\":649,\"pid\":1462,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2015/32_32/blue.svg\",\"url\":\"/document/product/649\",\"slug\":\"tsf\",\"title\":\"微服务平台 TSF\",\"dictId\":2015}]},{\"id\":1407,\"pid\":0,\"groupId\":112,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2678/16_16/blue.svg\",\"url\":\"\",\"slug\":\"basic-storage-service-catalog\",\"title\":\"基础存储服务\",\"dictId\":2678,\"children\":[{\"id\":436,\"pid\":1407,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2016/32_32/blue.svg\",\"url\":\"/document/product/436\",\"slug\":\"cos\",\"title\":\"对象存储\",\"dictId\":2016},{\"id\":362,\"pid\":1407,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2020/32_32/blue.svg\",\"url\":\"/document/product/362\",\"slug\":\"cbs\",\"title\":\"云硬盘\",\"dictId\":2020},{\"id\":582,\"pid\":1407,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2017/32_32/blue.svg\",\"url\":\"/document/product/582\",\"slug\":\"cfs\",\"title\":\"文件存储\",\"dictId\":2017},{\"id\":572,\"pid\":1407,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2018/32_32/blue.svg\",\"url\":\"/document/product/572\",\"slug\":\"cas\",\"title\":\"归档存储\",\"dictId\":2018},{\"id\":1105,\"pid\":1407,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2367/32_32/blue.svg\",\"url\":\"/document/product/1105\",\"slug\":\"chdfs\",\"title\":\"云 HDFS\",\"dictId\":2367},{\"id\":1424,\"pid\":1407,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1424\",\"slug\":\"goosefs\",\"title\":\"数据加速器 GooseFS\",\"dictId\":2697}]},{\"id\":1408,\"pid\":0,\"groupId\":112,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2681/16_16/blue.svg\",\"url\":\"\",\"slug\":\"storage-data-service-catalog\",\"title\":\"存储数据服务\",\"dictId\":2681,\"children\":[{\"id\":614,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2022/32_32/blue.svg\",\"url\":\"/document/product/614\",\"slug\":\"cls\",\"title\":\"日志服务\",\"dictId\":2022},{\"id\":460,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2051/32_32/blue.svg\",\"url\":\"/document/product/460\",\"slug\":\"ci\",\"title\":\"数据万象\",\"dictId\":2051},{\"id\":1246,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2523/32_32/blue.svg\",\"url\":\"/document/product/1246\",\"slug\":\"ip\",\"title\":\"图片处理\",\"dictId\":2523},{\"id\":1545,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1545\",\"slug\":\"mmp\",\"title\":\"多媒体处理\",\"dictId\":2829},{\"id\":1250,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2525/32_32/blue.svg\",\"url\":\"/document/product/1250\",\"slug\":\"ds\",\"title\":\"文档服务\",\"dictId\":2525},{\"id\":1235,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2514/32_32/blue.svg\",\"url\":\"/document/product/1235\",\"slug\":\"imga\",\"title\":\"图片审核\",\"dictId\":2514},{\"id\":1534,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1534\",\"slug\":\"tas\",\"title\":\"文本审核\",\"dictId\":2816},{\"id\":1535,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1535\",\"slug\":\"mas\",\"title\":\"视频审核\",\"dictId\":2815},{\"id\":1533,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1533\",\"slug\":\"aas\",\"title\":\"音频审核\",\"dictId\":2818},{\"id\":1532,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1532\",\"slug\":\"das\",\"title\":\"文档审核\",\"dictId\":2817},{\"id\":1247,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2524/32_32/blue.svg\",\"url\":\"/document/product/1247\",\"slug\":\"crg\",\"title\":\"内容识别\",\"dictId\":2524},{\"id\":1339,\"pid\":1408,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2615/32_32/blue.svg\",\"url\":\"/document/product/1339\",\"slug\":\"smh\",\"title\":\"智能媒资托管\",\"dictId\":2615}]},{\"id\":1410,\"pid\":0,\"groupId\":112,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2683/16_16/blue.svg\",\"url\":\"\",\"slug\":\"data-migration-catalog\",\"title\":\"数据迁移\",\"dictId\":2683,\"children\":[{\"id\":623,\"pid\":1410,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2021/32_32/blue.svg\",\"url\":\"/document/product/623\",\"slug\":\"cdm\",\"title\":\"云数据迁移\",\"dictId\":2021}]},{\"id\":1411,\"pid\":0,\"groupId\":112,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2684/16_16/blue.svg\",\"url\":\"\",\"slug\":\"hybrid-cloud-storage-catalog\",\"title\":\"混合云存储\",\"dictId\":2684,\"children\":[{\"id\":581,\"pid\":1411,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2019/32_32/blue.svg\",\"url\":\"/document/product/581\",\"slug\":\"csg\",\"title\":\"存储网关\",\"dictId\":2019},{\"id\":1374,\"pid\":1411,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2646/32_32/blue.svg\",\"url\":\"/document/product/1374\",\"slug\":\"tstor\",\"title\":\"存储一体机\",\"dictId\":2646},{\"id\":1479,\"pid\":1411,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2753/32_32/blue.svg\",\"url\":\"/document/product/1479\",\"slug\":\"tstorb2000\",\"title\":\"备份一体机\",\"dictId\":2753},{\"id\":1528,\"pid\":1411,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1528\",\"slug\":\"xpfs\",\"title\":\"并行文件一体机\",\"dictId\":2811}]},{\"id\":1512,\"pid\":0,\"groupId\":112,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2795/16_16/blue.svg\",\"url\":\"\",\"slug\":\"intelligent-storage-catalog\",\"title\":\"智能存储\",\"dictId\":2795,\"children\":[{\"id\":1344,\"pid\":1512,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2620/32_32/blue.svg\",\"url\":\"/document/product/1344\",\"slug\":\"iss\",\"title\":\"智能视图计算平台\",\"dictId\":2620}]},{\"id\":1330,\"pid\":0,\"groupId\":109,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2604/16_16/blue.svg\",\"url\":\"\",\"slug\":\"relational-database-catalog\",\"title\":\"关系型数据库\",\"dictId\":2604,\"children\":[{\"id\":409,\"pid\":1330,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2027/32_32/blue.svg\",\"url\":\"/document/product/409\",\"slug\":\"postgres\",\"title\":\"云数据库 PostgreSQL\",\"dictId\":2027},{\"id\":236,\"pid\":1330,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2024/32_32/blue.svg\",\"url\":\"/document/product/236\",\"slug\":\"cdb\",\"title\":\"云数据库 MySQL\",\"dictId\":2024},{\"id\":237,\"pid\":1330,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2025/32_32/blue.svg\",\"url\":\"/document/product/237\",\"slug\":\"tdsql\",\"title\":\"云数据库 MariaDB\",\"dictId\":2025},{\"id\":238,\"pid\":1330,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2026/32_32/blue.svg\",\"url\":\"/document/product/238\",\"slug\":\"sqlserver\",\"title\":\"云数据库 SQL Server\",\"dictId\":2026}]},{\"id\":1331,\"pid\":0,\"groupId\":109,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2605/16_16/blue.svg\",\"url\":\"\",\"slug\":\"distributed-relational-database-catalog\",\"title\":\"关系型数据库 TDSQL\",\"dictId\":2605,\"children\":[{\"id\":1003,\"pid\":1331,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2028/32_32/blue.svg\",\"url\":\"/document/product/1003\",\"slug\":\"cynosdb\",\"title\":\"TDSQL-C MySQL 版\",\"dictId\":2028},{\"id\":1556,\"pid\":1331,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2388/32_32/blue.svg\",\"url\":\"/document/product/1556\",\"slug\":\"tdcpg\",\"title\":\"TDSQL-C PostgreSQL 版\",\"dictId\":2819},{\"id\":557,\"pid\":1331,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2032/32_32/blue.svg\",\"url\":\"/document/product/557\",\"slug\":\"dcdb\",\"title\":\"TDSQL MySQL版\",\"dictId\":2032},{\"id\":1129,\"pid\":1331,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2388/32_32/blue.svg\",\"url\":\"/document/product/1129\",\"slug\":\"tbase\",\"title\":\"TDSQL PostgreSQL版\",\"dictId\":2388},{\"id\":1488,\"pid\":1331,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2774/32_32/blue.svg\",\"url\":\"/document/product/1488\",\"slug\":\"libradb\",\"title\":\"TDSQL-H LibraDB\",\"dictId\":2774}]},{\"id\":1332,\"pid\":0,\"groupId\":109,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2606/16_16/blue.svg\",\"url\":\"\",\"slug\":\"nosql-database-catalog\",\"title\":\"NoSQL 数据库\",\"dictId\":2606,\"children\":[{\"id\":239,\"pid\":1332,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2029/32_32/blue.svg\",\"url\":\"/document/product/239\",\"slug\":\"crs\",\"title\":\"云数据库 Redis®\",\"dictId\":2029},{\"id\":240,\"pid\":1332,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2030/32_32/blue.svg\",\"url\":\"/document/product/240\",\"slug\":\"mongodb\",\"title\":\"云数据库 MongoDB\",\"dictId\":2030},{\"id\":241,\"pid\":1332,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2034/32_32/blue.svg\",\"url\":\"/document/product/241\",\"slug\":\"cmem\",\"title\":\"云数据库 Memcached\",\"dictId\":2034},{\"id\":652,\"pid\":1332,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2035/32_32/blue.svg\",\"url\":\"/document/product/652\",\"slug\":\"ctsdb\",\"title\":\"时序数据库 CTSDB\",\"dictId\":2035},{\"id\":1363,\"pid\":1332,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2633/32_32/blue.svg\",\"url\":\"/document/product/1363\",\"slug\":\"tendis\",\"title\":\"云数据库 Tendis\",\"dictId\":2633},{\"id\":596,\"pid\":1332,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2037/32_32/blue.svg\",\"url\":\"/document/product/596\",\"slug\":\"tcaplusdb\",\"title\":\"游戏数据库 TcaplusDB\",\"dictId\":2037},{\"id\":1520,\"pid\":1332,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1520\",\"slug\":\"keewidb\",\"title\":\"云数据库 KeeWiDB\",\"dictId\":2804},{\"id\":1709,\"pid\":1332,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1709\",\"slug\":\"vdb\",\"title\":\"向量数据库\",\"dictId\":3016}]},{\"id\":1333,\"pid\":0,\"groupId\":109,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2607/16_16/blue.svg\",\"url\":\"\",\"slug\":\"database-all-in-one-catalog\",\"title\":\"数据库软硬一体\",\"dictId\":2607,\"children\":[{\"id\":643,\"pid\":1333,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2033/32_32/blue.svg\",\"url\":\"/document/product/643\",\"slug\":\"tdata\",\"title\":\"数据库一体机 TData\",\"dictId\":2033},{\"id\":1322,\"pid\":1333,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2595/32_32/blue.svg\",\"url\":\"/document/product/1322\",\"slug\":\"dbdc\",\"title\":\"云数据库独享集群\",\"dictId\":2595}]},{\"id\":1334,\"pid\":0,\"groupId\":109,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2608/16_16/blue.svg\",\"url\":\"\",\"slug\":\"database-saas-catalog\",\"title\":\"数据库 SaaS 服务\",\"dictId\":2608,\"children\":[{\"id\":571,\"pid\":1334,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2031/32_32/blue.svg\",\"url\":\"/document/product/571\",\"slug\":\"dts\",\"title\":\"数据传输服务\",\"dictId\":2031},{\"id\":1082,\"pid\":1334,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2038/32_32/blue.svg\",\"url\":\"/document/product/1082\",\"slug\":\"dbexpert\",\"title\":\"数据库专家服务\",\"dictId\":2038},{\"id\":1130,\"pid\":1334,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2392/32_32/blue.svg\",\"url\":\"/document/product/1130\",\"slug\":\"dbbrain\",\"title\":\"数据库智能管家 DBbrain\",\"dictId\":2392},{\"id\":672,\"pid\":1334,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/672\",\"slug\":\"dam\",\"title\":\"数据库审计\",\"dictId\":2758},{\"id\":1222,\"pid\":1334,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1222\",\"slug\":\"dmc\",\"title\":\"数据库管理\",\"dictId\":2494},{\"id\":1513,\"pid\":1334,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2796/32_32/blue.svg\",\"url\":\"/document/product/1513\",\"slug\":\"dbs\",\"title\":\"数据库备份服务\",\"dictId\":2796}]},{\"id\":1631,\"pid\":0,\"groupId\":109,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2927/16_16/blue.svg\",\"url\":\"\",\"slug\":\"database-distributed-cloud-catalog\",\"title\":\"数据库分布式云\",\"dictId\":2927,\"children\":[{\"id\":1632,\"pid\":1631,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2928/32_32/blue.svg\",\"url\":\"/document/product/1632\",\"slug\":\"ddcc\",\"title\":\"数据库分布式云中心\",\"dictId\":2928}]},{\"id\":1176,\"pid\":0,\"groupId\":106,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2453/16_16/blue.svg\",\"url\":\"\",\"slug\":\"Lowcode-catalog\",\"title\":\"低代码\",\"dictId\":2453,\"children\":[{\"id\":876,\"pid\":1176,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2198/32_32/blue.svg\",\"url\":\"/document/product/876\",\"slug\":\"tcb\",\"title\":\"云开发 CloudBase\",\"dictId\":2198},{\"id\":1301,\"pid\":1176,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2575/32_32/blue.svg\",\"url\":\"/document/product/1301\",\"slug\":\"weda\",\"title\":\"腾讯云微搭低代码\",\"dictId\":2575},{\"id\":1210,\"pid\":1176,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2485/32_32/blue.svg\",\"url\":\"/document/product/1210\",\"slug\":\"wh\",\"title\":\"静态网站托管\",\"dictId\":2485},{\"id\":1243,\"pid\":1176,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2527/32_32/blue.svg\",\"url\":\"/document/product/1243\",\"slug\":\"tcbr\",\"title\":\"云托管 CloudBase Run\",\"dictId\":2527},{\"id\":1450,\"pid\":1176,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2728/32_32/blue.svg\",\"url\":\"/document/product/1450\",\"slug\":\"webify\",\"title\":\"Web 应用托管\",\"dictId\":2728}]},{\"id\":222,\"pid\":0,\"groupId\":106,\"iconUrl\":\"https://main.qcloudimg.com/image/product/540/16_16/blue.svg\",\"url\":\"\",\"slug\":\"management-tools\",\"title\":\"云资源管理\",\"dictId\":540,\"children\":[{\"id\":598,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2207/32_32/blue.svg\",\"url\":\"/document/product/598\",\"slug\":\"cam\",\"title\":\"访问管理\",\"dictId\":2207},{\"id\":629,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2208/32_32/blue.svg\",\"url\":\"/document/product/629\",\"slug\":\"cloudaudit\",\"title\":\"操作审计\",\"dictId\":2208},{\"id\":850,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2209/32_32/blue.svg\",\"url\":\"/document/product/850\",\"slug\":\"organization\",\"title\":\"集团账号管理\",\"dictId\":2209},{\"id\":1500,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2783/32_32/blue.svg\",\"url\":\"/document/product/1500\",\"slug\":\"cfg\",\"title\":\"混沌演练平台\",\"dictId\":2783},{\"id\":1083,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2210/32_32/blue.svg\",\"url\":\"/document/product/1083\",\"slug\":\"bpaas\",\"title\":\"商业流程服务\",\"dictId\":2210},{\"id\":1688,\"pid\":222,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1688\",\"slug\":\"tchd\",\"title\":\"腾讯云健康看板\",\"dictId\":2986},{\"id\":1715,\"pid\":222,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1715\",\"slug\":\"trtccopilot\",\"title\":\"TRTC 云助手\",\"dictId\":3025},{\"id\":1579,\"pid\":222,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1579\",\"slug\":\"config\",\"title\":\"配置审计\",\"dictId\":2429},{\"id\":1264,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2540/32_32/blue.svg\",\"url\":\"/document/product/1264\",\"slug\":\"advisor\",\"title\":\"云顾问\",\"dictId\":2540},{\"id\":546,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2205/32_32/blue.svg\",\"url\":\"/document/api\",\"slug\":\"tencentapi\",\"title\":\"API 中心\",\"dictId\":0},{\"id\":494,\"pid\":222,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/sdk\",\"slug\":\"sdk\",\"title\":\"SDK 中心\",\"dictId\":0},{\"id\":651,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/raw/49607b5dff0dfba8cf75a35d29bbcb52.jpg\",\"url\":\"/document/product/651\",\"slug\":\"tagresources\",\"title\":\"标签\",\"dictId\":2322},{\"id\":1708,\"pid\":222,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1708\",\"slug\":\"controlcenter\",\"title\":\"控制中心\",\"dictId\":2977},{\"id\":1596,\"pid\":222,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2899/32_32/blue.svg\",\"url\":\"/document/product/1596\",\"slug\":\"region\",\"title\":\"地域管理系统\",\"dictId\":2899},{\"id\":1653,\"pid\":222,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1653\",\"slug\":\"tiat\",\"title\":\"云资源自动化 for Terraform\",\"dictId\":2955},{\"id\":1763,\"pid\":222,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1763\",\"slug\":\"iacp\",\"title\":\"云资源自动化 for Crossplane\",\"dictId\":3102},{\"id\":1312,\"pid\":222,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1312\",\"slug\":\"sts\",\"title\":\"安全凭证服务\",\"dictId\":2585},{\"id\":1787,\"pid\":222,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1787\",\"slug\":\"iap\",\"title\":\"身份识别平台\",\"dictId\":3125}]},{\"id\":1056,\"pid\":0,\"groupId\":106,\"iconUrl\":\"https://main.qcloudimg.com/image/product/542/16_16/blue.svg\",\"url\":\"\",\"slug\":\"monitors-ops\",\"title\":\"监控与运维\",\"dictId\":542,\"children\":[{\"id\":248,\"pid\":1056,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2211/32_32/blue.svg\",\"url\":\"/document/product/248\",\"slug\":\"tcop\",\"title\":\"腾讯云可观测平台\",\"dictId\":2211},{\"id\":1463,\"pid\":1056,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2743/32_32/blue.svg\",\"url\":\"/document/product/1463\",\"slug\":\"apm\",\"title\":\"应用性能监控\",\"dictId\":2743},{\"id\":1464,\"pid\":1056,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2745/32_32/blue.svg\",\"url\":\"/document/product/1464\",\"slug\":\"rum\",\"title\":\"前端性能监控\",\"dictId\":2745},{\"id\":280,\"pid\":1056,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2212/32_32/blue.svg\",\"url\":\"/document/product/280\",\"slug\":\"cat\",\"title\":\"云拨测\",\"dictId\":2212},{\"id\":1484,\"pid\":1056,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1484\",\"slug\":\"pts\",\"title\":\"云压测\",\"dictId\":2766},{\"id\":1416,\"pid\":1056,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2690/32_32/blue.svg\",\"url\":\"/document/product/1416\",\"slug\":\"tmp\",\"title\":\"Prometheus 监控服务\",\"dictId\":2690},{\"id\":1437,\"pid\":1056,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2716/32_32/blue.svg\",\"url\":\"/document/product/1437\",\"slug\":\"tcmg\",\"title\":\"Grafana 服务\",\"dictId\":2716}]},{\"id\":538,\"pid\":0,\"groupId\":106,\"iconUrl\":\"https://main.qcloudimg.com/image/product/543/16_16/blue.svg\",\"url\":\"\",\"slug\":\"developer-tools\",\"title\":\"开发者工具\",\"dictId\":543,\"children\":[{\"id\":1726,\"pid\":538,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1726\",\"slug\":\"coding\",\"title\":\"CODING DevOps\",\"dictId\":2356},{\"id\":1039,\"pid\":538,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1039\",\"slug\":\"cloudstudio\",\"title\":\"Cloud Studio(云端 IDE)\",\"dictId\":2302},{\"id\":1460,\"pid\":538,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2742/32_32/blue.svg\",\"url\":\"/document/product/1460\",\"slug\":\"tcap\",\"title\":\"腾讯云代码分析\",\"dictId\":2742},{\"id\":1665,\"pid\":538,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1665\",\"slug\":\"orcaterm\",\"title\":\"腾讯云遨驰终端\",\"dictId\":2971},{\"id\":1034,\"pid\":538,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2185/32_32/blue.svg\",\"url\":\"/document/product/1034\",\"slug\":\"tmf\",\"title\":\"移动开发平台\",\"dictId\":2185},{\"id\":1689,\"pid\":538,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1689\",\"slug\":\"cloudapp\",\"title\":\"云应用\",\"dictId\":2892},{\"id\":1749,\"pid\":538,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1749\",\"slug\":\"acc、代码助手\",\"title\":\"腾讯云 AI 代码助手\",\"dictId\":3071}]},{\"id\":1335,\"pid\":0,\"groupId\":106,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2611/16_16/blue.svg\",\"url\":\"\",\"slug\":\"design-collaboration\",\"title\":\"设计协同管理工具\",\"dictId\":2611,\"children\":[{\"id\":1336,\"pid\":1335,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2612/32_32/blue.svg\",\"url\":\"/document/product/1336\",\"slug\":\"codesign\",\"title\":\"设计协作平台\",\"dictId\":2612}]},{\"id\":1699,\"pid\":0,\"groupId\":106,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3002/16_16/blue.svg\",\"url\":\"\",\"slug\":\"api-and-tools-catalog\",\"title\":\"API 与工具\",\"dictId\":3002,\"children\":[{\"id\":871,\"pid\":1699,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2204/32_32/blue.svg\",\"url\":\"/document/product/871\",\"slug\":\"tca\",\"title\":\"腾讯云助手\",\"dictId\":2204},{\"id\":1278,\"pid\":1699,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2205/32_32/blue.svg\",\"url\":\"/document/product/1278\",\"slug\":\"api\",\"title\":\"云 API\",\"dictId\":2205},{\"id\":440,\"pid\":1699,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2206/32_32/blue.svg\",\"url\":\"/document/product/440\",\"slug\":\"cli\",\"title\":\"命令行工具\",\"dictId\":2206}]},{\"id\":1766,\"pid\":0,\"groupId\":106,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3112/16_16/blue.svg\",\"url\":\"\",\"slug\":\"cloud-migration-tools-catalog\",\"title\":\"云迁移工具\",\"dictId\":3112,\"children\":[{\"id\":659,\"pid\":1766,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2214/32_32/blue.svg\",\"url\":\"/document/product/659\",\"slug\":\"cmg\",\"title\":\"云迁移\",\"dictId\":2214}]}],[{\"id\":225,\"pid\":0,\"groupId\":114,\"iconUrl\":\"https://main.qcloudimg.com/image/product/509/16_16/blue.svg\",\"url\":\"\",\"slug\":\"video\",\"title\":\"视频服务\",\"dictId\":509,\"children\":[{\"id\":1156,\"pid\":225,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2445/32_32/blue.svg\",\"url\":\"/document/product/1156\",\"slug\":\"tcp\",\"title\":\"智能创作\",\"dictId\":2775},{\"id\":267,\"pid\":225,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2358/32_32/blue.svg\",\"url\":\"/document/product/267\",\"slug\":\"css\",\"title\":\"云直播\",\"dictId\":2358},{\"id\":266,\"pid\":225,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2068/32_32/blue.svg\",\"url\":\"/document/product/266\",\"slug\":\"vod\",\"title\":\"云点播\",\"dictId\":2068},{\"id\":1351,\"pid\":225,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2626/32_32/blue.svg\",\"url\":\"/document/product/1351\",\"slug\":\"taidc\",\"title\":\"腾讯云智绘\",\"dictId\":2626}]},{\"id\":1586,\"pid\":0,\"groupId\":114,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2834/16_16/blue.svg\",\"url\":\"\",\"slug\":\"video-terminal-catalog\",\"title\":\"视频终端\",\"dictId\":2834,\"children\":[{\"id\":1449,\"pid\":1586,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2727/32_32/blue.svg\",\"url\":\"/document/product/1449\",\"slug\":\"rtcube\",\"title\":\"音视频终端 SDK(腾讯云视立方)\",\"dictId\":2727},{\"id\":1640,\"pid\":1586,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1640\",\"slug\":\"calling\",\"title\":\"音视频通话 SDK\",\"dictId\":2939},{\"id\":454,\"pid\":1586,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2070/32_32/blue.svg\",\"url\":\"/document/product/454\",\"slug\":\"mlvb\",\"title\":\"直播 SDK\",\"dictId\":2070},{\"id\":584,\"pid\":1586,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2071/32_32/blue.svg\",\"url\":\"/document/product/584\",\"slug\":\"ugsv\",\"title\":\"短视频 SDK\",\"dictId\":2071},{\"id\":616,\"pid\":1586,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2073/32_32/blue.svg\",\"url\":\"/document/product/616\",\"slug\":\"x-magic\",\"title\":\"腾讯特效 SDK\",\"dictId\":2073},{\"id\":881,\"pid\":1586,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2072/32_32/blue.svg\",\"url\":\"/document/product/881\",\"slug\":\"player\",\"title\":\"播放器 SDK\",\"dictId\":2072},{\"id\":1662,\"pid\":1586,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1662\",\"slug\":\"avatar\",\"title\":\"虚拟形象 SDK\",\"dictId\":2966},{\"id\":1690,\"pid\":1586,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1690\",\"slug\":\"roomkit\",\"title\":\"多人音视频房间 SDK\",\"dictId\":2987}]},{\"id\":1195,\"pid\":0,\"groupId\":114,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2471/16_16/blue.svg\",\"url\":\"\",\"slug\":\"media-processing-catalog\",\"title\":\"媒体处理\",\"dictId\":2471,\"children\":[{\"id\":1162,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2436/32_32/blue.svg\",\"url\":\"/document/product/1162\",\"slug\":\"gs\",\"title\":\"云游戏\",\"dictId\":2436},{\"id\":862,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2069/32_32/blue.svg\",\"url\":\"/document/product/862\",\"slug\":\"mps\",\"title\":\"媒体处理\",\"dictId\":2069},{\"id\":1183,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2413/32_32/blue.svg\",\"url\":\"/document/product/1183\",\"slug\":\"tsc\",\"title\":\"极速高清\",\"dictId\":2413},{\"id\":1185,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2414/32_32/blue.svg\",\"url\":\"/document/product/1185\",\"slug\":\"ii\",\"title\":\"智能识别\",\"dictId\":2414},{\"id\":1184,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2415/32_32/blue.svg\",\"url\":\"/document/product/1184\",\"slug\":\"ia\",\"title\":\"智能审核\",\"dictId\":2415},{\"id\":1186,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2412/32_32/blue.svg\",\"url\":\"/document/product/1186\",\"slug\":\"ie\",\"title\":\"智能编辑\",\"dictId\":2412},{\"id\":1672,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1672\",\"slug\":\"mpse\",\"title\":\"媒体处理企业版\",\"dictId\":2968},{\"id\":618,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2065/32_32/blue.svg\",\"url\":\"/document/product/618\",\"slug\":\"x-p2p\",\"title\":\"X-P2P\",\"dictId\":2065},{\"id\":1291,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2566/32_32/blue.svg\",\"url\":\"/document/product/1291\",\"slug\":\"cvd\",\"title\":\"云桌面\",\"dictId\":2566},{\"id\":1547,\"pid\":1195,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2832/32_32/blue.svg\",\"url\":\"/document/product/1547\",\"slug\":\"car\",\"title\":\"应用云渲染\",\"dictId\":2832}]},{\"id\":1530,\"pid\":0,\"groupId\":114,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2822/16_16/blue.svg\",\"url\":\"\",\"slug\":\"content-creation-catalog\",\"title\":\"内容创作\",\"dictId\":2822,\"children\":[{\"id\":1592,\"pid\":1530,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1592\",\"slug\":\"yinsuda\",\"title\":\"音速达直播音乐版权引擎\",\"dictId\":2894}]},{\"id\":1725,\"pid\":0,\"groupId\":114,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3035/16_16/blue.svg\",\"url\":\"\",\"slug\":\"real-time-interactive-catalog\",\"title\":\"实时互动\",\"dictId\":3035,\"children\":[{\"id\":647,\"pid\":1725,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2066/32_32/blue.svg\",\"url\":\"/document/product/647\",\"slug\":\"trtc\",\"title\":\"实时音视频\",\"dictId\":2066},{\"id\":607,\"pid\":1725,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2190/32_32/blue.svg\",\"url\":\"/document/product/607\",\"slug\":\"gme\",\"title\":\"游戏多媒体引擎\",\"dictId\":2190},{\"id\":1584,\"pid\":1725,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1584\",\"slug\":\"trro\",\"title\":\"实时互动-工业能源版\",\"dictId\":2873},{\"id\":1639,\"pid\":1725,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1639\",\"slug\":\"lcic\",\"title\":\"实时互动-教育版\",\"dictId\":2936}]},{\"id\":600,\"pid\":0,\"groupId\":118,\"iconUrl\":\"https://main.qcloudimg.com/image/product/506/16_16/blue.svg\",\"url\":\"\",\"slug\":\"basic-communication-catalog\",\"title\":\"云通信\",\"dictId\":506,\"children\":[{\"id\":269,\"pid\":600,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2053/32_32/blue.svg\",\"url\":\"/document/product/269\",\"slug\":\"im\",\"title\":\"即时通信 IM\",\"dictId\":2053},{\"id\":382,\"pid\":600,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2054/32_32/blue.svg\",\"url\":\"/document/product/382\",\"slug\":\"sms\",\"title\":\"短信\",\"dictId\":2054},{\"id\":1128,\"pid\":600,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2056/32_32/blue.svg\",\"url\":\"/document/product/1128\",\"slug\":\"vms\",\"title\":\"语音消息\",\"dictId\":2056},{\"id\":1288,\"pid\":600,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1288\",\"slug\":\"ses\",\"title\":\"邮件推送\",\"dictId\":2563},{\"id\":1415,\"pid\":600,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2688/32_32/blue.svg\",\"url\":\"/document/product/1415\",\"slug\":\"nvs\",\"title\":\"号码认证\",\"dictId\":2688},{\"id\":679,\"pid\":600,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2179/32_32/blue.svg\",\"url\":\"/document/product/679\",\"slug\":\"ccc\",\"title\":\"云联络中心\",\"dictId\":2179}]},{\"id\":223,\"pid\":0,\"groupId\":118,\"iconUrl\":\"https://main.qcloudimg.com/image/product/529/16_16/blue.svg\",\"url\":\"\",\"slug\":\"domain-catalog\",\"title\":\"域名管理\",\"dictId\":529,\"children\":[{\"id\":242,\"pid\":223,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2312/32_32/blue.svg\",\"url\":\"/document/product/242\",\"slug\":\"domain\",\"title\":\"域名注册\",\"dictId\":2312},{\"id\":302,\"pid\":223,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2162/32_32/blue.svg\",\"url\":\"/document/product/302\",\"slug\":\"dns\",\"title\":\"云解析 DNS\",\"dictId\":2162},{\"id\":379,\"pid\":223,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2165/32_32/blue.svg\",\"url\":\"/document/product/379\",\"slug\":\"httpdns\",\"title\":\"移动解析 HTTPDNS\",\"dictId\":2165},{\"id\":1338,\"pid\":223,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2614/32_32/blue.svg\",\"url\":\"/document/product/1338\",\"slug\":\"privatedns\",\"title\":\"私有域解析 Private DNS\",\"dictId\":2614},{\"id\":1551,\"pid\":223,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1551\",\"slug\":\"igtm\",\"title\":\"智能全局流量管理\",\"dictId\":2838}]},{\"id\":662,\"pid\":0,\"groupId\":118,\"iconUrl\":\"https://main.qcloudimg.com/image/product/531/16_16/blue.svg\",\"url\":\"\",\"slug\":\"blockchain\",\"title\":\"区块链\",\"dictId\":531,\"children\":[{\"id\":663,\"pid\":662,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2175/32_32/blue.svg\",\"url\":\"/document/product/663\",\"slug\":\"tbaas\",\"title\":\"腾讯云区块链服务平台 TBaaS\",\"dictId\":2175},{\"id\":1439,\"pid\":662,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2718/32_32/blue.svg\",\"url\":\"/document/product/1439\",\"slug\":\"tdid\",\"title\":\"分布式身份\",\"dictId\":2718},{\"id\":1647,\"pid\":662,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1647\",\"slug\":\"tbcc\",\"title\":\"可信计算服务\",\"dictId\":2949},{\"id\":1648,\"pid\":662,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1648\",\"slug\":\"bis\",\"title\":\"跨链服务平台\",\"dictId\":2950}]},{\"id\":1701,\"pid\":0,\"groupId\":118,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3008/24_24/blue.svg\",\"url\":\"\",\"slug\":\"website-and-filing-catalog\",\"title\":\"网站与备案\",\"dictId\":3008,\"children\":[{\"id\":243,\"pid\":1701,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2163/32_32/blue.svg\",\"url\":\"/document/product/243\",\"slug\":\"ba\",\"title\":\"ICP 备案\",\"dictId\":2163},{\"id\":400,\"pid\":1701,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2164/32_32/blue.svg\",\"url\":\"/document/product/400\",\"slug\":\"ssl\",\"title\":\"SSL 证书\",\"dictId\":2164},{\"id\":1598,\"pid\":1701,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1598\",\"slug\":\"cloudpages\",\"title\":\"腾讯云建站\",\"dictId\":2947},{\"id\":1276,\"pid\":1701,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2551/32_32/blue.svg\",\"url\":\"/document/product/1276\",\"slug\":\"wds\",\"title\":\"网站建设\",\"dictId\":2551}]},{\"id\":602,\"pid\":0,\"groupId\":121,\"iconUrl\":\"https://main.qcloudimg.com/image/product/508/16_16/blue.svg\",\"url\":\"\",\"slug\":\"cdn-catalog\",\"title\":\"CDN 与边缘平台\",\"dictId\":508,\"children\":[{\"id\":1552,\"pid\":602,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1552\",\"slug\":\"teo\",\"title\":\"边缘安全加速平台 EO\",\"dictId\":2841},{\"id\":228,\"pid\":602,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2060/32_32/blue.svg\",\"url\":\"/document/product/228\",\"slug\":\"cdn\",\"title\":\"内容分发网络 CDN\",\"dictId\":2060},{\"id\":570,\"pid\":602,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2062/32_32/blue.svg\",\"url\":\"/document/product/570\",\"slug\":\"ecdn\",\"title\":\"全站加速网络\",\"dictId\":2062},{\"id\":1226,\"pid\":602,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2064/32_32/blue.svg\",\"url\":\"/document/product/1226\",\"slug\":\"scdn\",\"title\":\"安全加速 SCDN\",\"dictId\":2064},{\"id\":1385,\"pid\":602,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2656/32_32/blue.svg\",\"url\":\"/document/product/1385\",\"slug\":\"mna\",\"title\":\"多网聚合加速\",\"dictId\":2656}]},{\"id\":1414,\"pid\":0,\"groupId\":121,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2689/24_24/blue.svg\",\"url\":\"\",\"slug\":\"edge-computing-catalog\",\"title\":\"边缘计算\",\"dictId\":2689,\"children\":[{\"id\":1108,\"pid\":1414,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2362/32_32/blue.svg\",\"url\":\"/document/product/1108\",\"slug\":\"ecm\",\"title\":\"边缘计算机器\",\"dictId\":2362},{\"id\":1118,\"pid\":1414,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2376/32_32/blue.svg\",\"url\":\"/document/product/1118\",\"slug\":\"iecp\",\"title\":\"物联网边缘计算平台\",\"dictId\":2376}]},{\"id\":676,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/535/16_16/blue.svg\",\"url\":\"\",\"slug\":\"finance-catalog\",\"title\":\"金融服务\",\"dictId\":535,\"children\":[{\"id\":1122,\"pid\":676,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2369/32_32/blue.svg\",\"url\":\"/document/product/1122\",\"slug\":\"cpdp\",\"title\":\"腾讯微卡收付通\",\"dictId\":2369},{\"id\":569,\"pid\":676,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2183/32_32/blue.svg\",\"url\":\"/document/product/569\",\"slug\":\"cpay\",\"title\":\"云支付\",\"dictId\":2183},{\"id\":1136,\"pid\":676,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2407/32_32/blue.svg\",\"url\":\"/document/product/1136\",\"slug\":\"fpcrdtp\",\"title\":\"金融专有云开发测试平台\",\"dictId\":2407},{\"id\":1170,\"pid\":676,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2448/32_32/blue.svg\",\"url\":\"/document/product/1170\",\"slug\":\"tscf\",\"title\":\"供应链金融\",\"dictId\":2448},{\"id\":1194,\"pid\":676,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2472/32_32/blue.svg\",\"url\":\"/document/product/1194\",\"slug\":\"tefp\",\"title\":\"企业金融服务平台\",\"dictId\":2472}]},{\"id\":883,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/538/16_16/blue.svg\",\"url\":\"\",\"slug\":\"education\",\"title\":\"教育服务\",\"dictId\":538,\"children\":[{\"id\":884,\"pid\":883,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2192/32_32/blue.svg\",\"url\":\"/document/product/884\",\"slug\":\"oeb\",\"title\":\"口语评测(基础版)\",\"dictId\":2193},{\"id\":1004,\"pid\":883,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2195/32_32/blue.svg\",\"url\":\"/document/product/1004\",\"slug\":\"hcm\",\"title\":\"数学作业批改\",\"dictId\":2195},{\"id\":1076,\"pid\":883,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2197/32_32/blue.svg\",\"url\":\"/document/product/1076\",\"slug\":\"ecc\",\"title\":\"英文作文批改\",\"dictId\":2197},{\"id\":1137,\"pid\":883,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2404/32_32/blue.svg\",\"url\":\"/document/product/1137\",\"slug\":\"tiw\",\"title\":\"互动白板\",\"dictId\":2404},{\"id\":1774,\"pid\":883,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1774\",\"slug\":\"oen\",\"title\":\"口语评测(新版)\",\"dictId\":2194}]},{\"id\":1626,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2931/16_16/blue.svg\",\"url\":\"\",\"slug\":\"media-service-catalog\",\"title\":\"传媒服务\",\"dictId\":2931,\"children\":[{\"id\":1636,\"pid\":1626,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1636\",\"slug\":\"mcmp\",\"title\":\"传媒云原生移动开发平台\",\"dictId\":2933}]},{\"id\":852,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/536/16_16/blue.svg\",\"url\":\"\",\"slug\":\"retail\",\"title\":\"零售服务\",\"dictId\":536,\"children\":[{\"id\":1713,\"pid\":852,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1713\",\"slug\":\"srgpl\",\"title\":\"智慧零售增长平台 Lite 版\",\"dictId\":3023},{\"id\":1776,\"pid\":852,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1776\",\"slug\":\"airec\",\"title\":\"四力选品智能推荐\",\"dictId\":3110}]},{\"id\":224,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/539/16_16/blue.svg\",\"url\":\"\",\"slug\":\"mobile\",\"title\":\"移动服务\",\"dictId\":539,\"children\":[{\"id\":683,\"pid\":224,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2201/32_32/blue.svg\",\"url\":\"/document/product/683\",\"slug\":\"qapm\",\"title\":\"腾讯客户端性能分析\",\"dictId\":2201}]},{\"id\":1089,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/544/16_16/blue.svg\",\"url\":\"\",\"slug\":\"buildings\",\"title\":\"建筑服务\",\"dictId\":544,\"children\":[{\"id\":1693,\"pid\":1089,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1693\",\"slug\":\"weilingwith\",\"title\":\"微瓴同业开放平台\",\"dictId\":3000},{\"id\":1707,\"pid\":1089,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1707\",\"slug\":\"mall\",\"title\":\"商场客留大数据\",\"dictId\":3014}]},{\"id\":1133,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2408/16_16/blue.svg\",\"url\":\"\",\"slug\":\"government-catalog\",\"title\":\"政务服务\",\"dictId\":2408,\"children\":[{\"id\":1134,\"pid\":1133,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2409/32_32/blue.svg\",\"url\":\"/document/product/1134\",\"slug\":\"spb\",\"title\":\"智慧党建\",\"dictId\":2409}]},{\"id\":1147,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2530/16_16/blue.svg\",\"url\":\"\",\"slug\":\"healthcare-catalog\",\"title\":\"医疗服务\",\"dictId\":2530,\"children\":[{\"id\":1273,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2548/32_32/blue.svg\",\"url\":\"/document/product/1273\",\"slug\":\"ig\",\"title\":\"智能导诊\",\"dictId\":2548},{\"id\":1258,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2531/32_32/blue.svg\",\"url\":\"/document/product/1258\",\"slug\":\"ama\",\"title\":\"AI 就医助手\",\"dictId\":2531},{\"id\":1388,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2663/32_32/blue.svg\",\"url\":\"/document/product/1388\",\"slug\":\"aca\",\"title\":\"AI 临床助手\",\"dictId\":2663},{\"id\":1282,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2558/32_32/blue.svg\",\"url\":\"/document/product/1282\",\"slug\":\"ipc\",\"title\":\"智能预问诊\",\"dictId\":2558},{\"id\":1314,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2587/32_32/blue.svg\",\"url\":\"/document/product/1314\",\"slug\":\"mrs\",\"title\":\"医疗报告结构化\",\"dictId\":2587},{\"id\":1405,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2686/32_32/blue.svg\",\"url\":\"/document/product/1405\",\"slug\":\"aipa\",\"title\":\"精准预约\",\"dictId\":2686},{\"id\":1582,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1582\",\"slug\":\"hdip\",\"title\":\"医疗数据中台\",\"dictId\":2877},{\"id\":1661,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2965/16_16/blue.svg\",\"url\":\"/document/product/1661\",\"slug\":\"tmmca\",\"title\":\"医疗内容平台\",\"dictId\":2965},{\"id\":1671,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1671\",\"slug\":\"ngesevents\",\"title\":\"药械会议管理\",\"dictId\":2976},{\"id\":1670,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1670\",\"slug\":\"ngescrm\",\"title\":\"药械客户管理\",\"dictId\":2975},{\"id\":1669,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1669\",\"slug\":\"mcm\",\"title\":\"多渠道营销\",\"dictId\":2974},{\"id\":1643,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1643\",\"slug\":\"omics\",\"title\":\"腾讯健康组学平台\",\"dictId\":2944},{\"id\":1710,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1710\",\"slug\":\"medicalplatform\",\"title\":\"数智医疗影像平台\",\"dictId\":3018},{\"id\":1714,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1714\",\"slug\":\"fda\",\"title\":\"家医助手\",\"dictId\":3022},{\"id\":1717,\"pid\":1147,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1717\",\"slug\":\"thed\",\"title\":\"腾讯健康药箱\",\"dictId\":3028}]},{\"id\":1279,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2554/16_16/blue.svg\",\"url\":\"\",\"slug\":\"tourism-catalog\",\"title\":\"文旅服务\",\"dictId\":2554,\"children\":[{\"id\":1684,\"pid\":1279,\"groupId\":0,\"iconUrl\":\"https://qcloudimg.tencent-cloud.cn/raw/a672021491c4bab17b26d68a27269f26.svg\",\"url\":\"/document/product/1684\",\"slug\":\"tourism\",\"title\":\"文旅客情大数据\",\"dictId\":2982}]},{\"id\":1525,\"pid\":0,\"groupId\":105,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2808/16_16/blue.svg\",\"url\":\"\",\"slug\":\"science-and-technology-innovation-services-catalog\",\"title\":\"科创服务\",\"dictId\":2808,\"children\":[{\"id\":1526,\"pid\":1525,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2809/24_24/blue.svg\",\"url\":\"/document/product/1526\",\"slug\":\"mrp\",\"title\":\"材料研究平台\",\"dictId\":2809}]}],[{\"id\":1053,\"pid\":0,\"groupId\":103,\"iconUrl\":\"https://main.qcloudimg.com/image/product/524/16_16/blue.svg\",\"url\":\"\",\"slug\":\"face-recognition-catalog\",\"title\":\"AI 基础产品\",\"dictId\":524,\"children\":[{\"id\":867,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2146/32_32/blue.svg\",\"url\":\"/document/product/867\",\"slug\":\"facerecognition\",\"title\":\"人脸识别\",\"dictId\":2146},{\"id\":866,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2145/32_32/blue.svg\",\"url\":\"/document/product/866\",\"slug\":\"ocr\",\"title\":\"文字识别\",\"dictId\":2145},{\"id\":1588,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1588\",\"slug\":\"imagetagging\",\"title\":\"图像标签\",\"dictId\":2888},{\"id\":1589,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1589\",\"slug\":\"imagesearch\",\"title\":\"图像搜索\",\"dictId\":2889},{\"id\":865,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2144/32_32/blue.svg\",\"url\":\"/document/product/865\",\"slug\":\"imagerecognition\",\"title\":\"图像识别\",\"dictId\":2144},{\"id\":1509,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1509\",\"slug\":\"ivld\",\"title\":\"视频理解\",\"dictId\":2790},{\"id\":1590,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1590\",\"slug\":\"imageprocess\",\"title\":\"图像处理\",\"dictId\":2890},{\"id\":670,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2147/32_32/blue.svg\",\"url\":\"/document/product/670\",\"slug\":\"facefusion\",\"title\":\"人脸融合\",\"dictId\":2147},{\"id\":1202,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2477/32_32/blue.svg\",\"url\":\"/document/product/1202\",\"slug\":\"ft\",\"title\":\"人像变换\",\"dictId\":2477},{\"id\":1172,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2446/32_32/blue.svg\",\"url\":\"/document/product/1172\",\"slug\":\"fmu\",\"title\":\"人脸试妆\",\"dictId\":2446},{\"id\":1093,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2150/32_32/blue.svg\",\"url\":\"/document/product/1093\",\"slug\":\"asr\",\"title\":\"语音识别\",\"dictId\":2150},{\"id\":1073,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2151/32_32/blue.svg\",\"url\":\"/document/product/1073\",\"slug\":\"tts\",\"title\":\"语音合成\",\"dictId\":2151},{\"id\":1283,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2559/32_32/blue.svg\",\"url\":\"/document/product/1283\",\"slug\":\"vrs\",\"title\":\"声音复刻\",\"dictId\":2559},{\"id\":1287,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2562/32_32/blue.svg\",\"url\":\"/document/product/1287\",\"slug\":\"ctts\",\"title\":\"声音定制\",\"dictId\":2562},{\"id\":1664,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1664\",\"slug\":\"stsc\",\"title\":\"音色变换\",\"dictId\":2969},{\"id\":271,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2158/32_32/blue.svg\",\"url\":\"/document/product/271\",\"slug\":\"nlp\",\"title\":\"NLP 服务\",\"dictId\":2158},{\"id\":551,\"pid\":1053,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2159/32_32/blue.svg\",\"url\":\"/document/product/551\",\"slug\":\"tmt\",\"title\":\"机器翻译\",\"dictId\":2159}]},{\"id\":1139,\"pid\":0,\"groupId\":103,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2406/16_16/blue.svg\",\"url\":\"\",\"slug\":\"ocr-catalog\",\"title\":\"AI 应用产品\",\"dictId\":2406,\"children\":[{\"id\":1007,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2148/32_32/blue.svg\",\"url\":\"/document/product/1007\",\"slug\":\"faceid\",\"title\":\"人脸核身\",\"dictId\":2148},{\"id\":1240,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1240\",\"slug\":\"ivh\",\"title\":\"腾讯云智能数智人\",\"dictId\":2516},{\"id\":1558,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1558\",\"slug\":\"tbdt\",\"title\":\"腾讯灯塔智能数据洞察\",\"dictId\":2847},{\"id\":1399,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2667/32_32/blue.svg\",\"url\":\"/document/product/1399\",\"slug\":\"tsi\",\"title\":\"腾讯同传\",\"dictId\":2667},{\"id\":1655,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1655\",\"slug\":\"sgim\",\"title\":\"搜狗输入法企业版\",\"dictId\":2957},{\"id\":1214,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2479/32_32/blue.svg\",\"url\":\"/document/product/1214\",\"slug\":\"is\",\"title\":\"智能扫码\",\"dictId\":2479},{\"id\":1253,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1253\",\"slug\":\"vtiv\",\"title\":\"增值税发票核验\",\"dictId\":2528},{\"id\":1341,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1341\",\"slug\":\"smart-ocr\",\"title\":\"智能结构化\",\"dictId\":2617},{\"id\":1539,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1539\",\"slug\":\"officedocumentocr\",\"title\":\"办公文档还原\",\"dictId\":2823},{\"id\":1630,\"pid\":1139,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1630\",\"slug\":\"tie\",\"title\":\"文本图像增强\",\"dictId\":2925}]},{\"id\":880,\"pid\":0,\"groupId\":103,\"iconUrl\":\"https://main.qcloudimg.com/image/product/526/16_16/blue.svg\",\"url\":\"\",\"slug\":\"ai-platform-catalog\",\"title\":\"AI 平台产品\",\"dictId\":526,\"children\":[{\"id\":851,\"pid\":880,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2156/32_32/blue.svg\",\"url\":\"/document/product/851\",\"slug\":\"tione\",\"title\":\"TI-ONE 训练平台\",\"dictId\":2156},{\"id\":1026,\"pid\":880,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2157/32_32/blue.svg\",\"url\":\"/document/product/1026\",\"slug\":\"timatrix\",\"title\":\"TI-Matrix 应用平台\",\"dictId\":2157},{\"id\":1511,\"pid\":880,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1511\",\"slug\":\"tiacc\",\"title\":\"TI-ACC 加速工具\",\"dictId\":2792},{\"id\":1659,\"pid\":880,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1659\",\"slug\":\"tiocr\",\"title\":\"TI-OCR 训练平台\",\"dictId\":2961},{\"id\":1756,\"pid\":880,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1756\",\"slug\":\"dtb\",\"title\":\"数字孪生简报\",\"dictId\":3081},{\"id\":1353,\"pid\":880,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1353\",\"slug\":\"taop\",\"title\":\"腾讯觅影开放实验平台\",\"dictId\":2627}]},{\"id\":1731,\"pid\":0,\"groupId\":125,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3040/16_16/blue.svg\",\"url\":\"\",\"slug\":\"enterprise-shangtong-catalog\",\"title\":\"企点商通\",\"dictId\":3040,\"children\":[{\"id\":1683,\"pid\":1731,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1683\",\"slug\":\"qdbc\",\"title\":\"商通基础\",\"dictId\":3051},{\"id\":1724,\"pid\":1731,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1724\",\"slug\":\"qtrade\",\"title\":\"金融行业-QTrade\",\"dictId\":3052},{\"id\":1695,\"pid\":1731,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1695\",\"slug\":\"etcrm\",\"title\":\"电子行业-腾采通\",\"dictId\":3053},{\"id\":1157,\"pid\":1731,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1157\",\"slug\":\"pcn\",\"title\":\"印刷行业-网印通\",\"dictId\":3054},{\"id\":1734,\"pid\":1731,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1734\",\"slug\":\"cqf\",\"title\":\"货代行业-货代 Q 宝\",\"dictId\":3055},{\"id\":1735,\"pid\":1731,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1735\",\"slug\":\"cqitl\",\"title\":\"货代行业-货客通\",\"dictId\":3056}]},{\"id\":1732,\"pid\":0,\"groupId\":125,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3041/16_16/blue.svg\",\"url\":\"\",\"slug\":\"enterprise-analysis-catalog\",\"title\":\"企点分析\",\"dictId\":3041,\"children\":[{\"id\":1736,\"pid\":1732,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1736\",\"slug\":\"tqdcdp\",\"title\":\"客户数据平台\",\"dictId\":3057},{\"id\":1737,\"pid\":1732,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1737\",\"slug\":\"tqdab\",\"title\":\"AB 实验平台\",\"dictId\":3058},{\"id\":1738,\"pid\":1732,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1738\",\"slug\":\"tqdba\",\"title\":\"融合分析\",\"dictId\":3059},{\"id\":1739,\"pid\":1732,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1739\",\"slug\":\"tqdca\",\"title\":\"会话分析\",\"dictId\":3060},{\"id\":1740,\"pid\":1732,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1740\",\"slug\":\"tqdpa\",\"title\":\"画像分析\",\"dictId\":3061},{\"id\":1741,\"pid\":1732,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1741\",\"slug\":\"tqdaa\",\"title\":\"增强分析\",\"dictId\":3062}]},{\"id\":1733,\"pid\":0,\"groupId\":125,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3042/16_16/blue.svg\",\"url\":\"\",\"slug\":\"enterprise-marketing-catalog\",\"title\":\"企点营销\",\"dictId\":3042,\"children\":[{\"id\":1742,\"pid\":1733,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1742\",\"slug\":\"tqdlm\",\"title\":\"客户忠诚度管理\",\"dictId\":3063},{\"id\":1743,\"pid\":1733,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1743\",\"slug\":\"tqdrem\",\"title\":\"营销智能推荐\",\"dictId\":3064},{\"id\":1744,\"pid\":1733,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1744\",\"slug\":\"tqdscrm\",\"title\":\"营销云 SCRM\",\"dictId\":3065},{\"id\":1746,\"pid\":1733,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1746\",\"slug\":\"tqdde\",\"title\":\"数字会展\",\"dictId\":3067},{\"id\":1747,\"pid\":1733,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1747\",\"slug\":\"tqdma\",\"title\":\"营销自动化\",\"dictId\":3068}]},{\"id\":1748,\"pid\":0,\"groupId\":103,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3070/16_16/blue.svg\",\"url\":\"\",\"slug\":\"hunyuan-catalog\",\"title\":\"腾讯大模型\",\"dictId\":3070,\"children\":[{\"id\":1729,\"pid\":1748,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1729\",\"slug\":\"hunyuan\",\"title\":\"腾讯混元大模型\",\"dictId\":3045},{\"id\":1668,\"pid\":1748,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1668\",\"slug\":\"aiart\",\"title\":\"大模型图像创作引擎\",\"dictId\":2973},{\"id\":1616,\"pid\":1748,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1616\",\"slug\":\"segmentportrait\",\"title\":\"大模型视频创作引擎\",\"dictId\":2917},{\"id\":1759,\"pid\":1748,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1759\",\"slug\":\"lke\",\"title\":\"大模型知识引擎\",\"dictId\":3085}]},{\"id\":885,\"pid\":0,\"groupId\":122,\"iconUrl\":\"https://main.qcloudimg.com/image/product/532/16_16/blue.svg\",\"url\":\"\",\"slug\":\"enterprise-catalog\",\"title\":\"企业应用\",\"dictId\":532,\"children\":[{\"id\":1304,\"pid\":885,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2577/32_32/blue.svg\",\"url\":\"/document/product/1304\",\"slug\":\"survey\",\"title\":\"腾讯问卷\",\"dictId\":2577}]},{\"id\":1094,\"pid\":0,\"groupId\":122,\"iconUrl\":\"https://main.qcloudimg.com/image/product/534/16_16/blue.svg\",\"url\":\"\",\"slug\":\"work-collaboration-catalog\",\"title\":\"办公协同\",\"dictId\":534,\"children\":[{\"id\":1323,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2693/32_32/blue.svg\",\"url\":\"/document/product/1323\",\"slug\":\"ess-overview\",\"title\":\"腾讯电子签\",\"dictId\":2693},{\"id\":1095,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2226/32_32/blue.svg\",\"url\":\"/document/product/1095\",\"slug\":\"tm\",\"title\":\"腾讯会议\",\"dictId\":2226},{\"id\":1663,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1663\",\"slug\":\"tdb\",\"title\":\"腾讯文档企业版\",\"dictId\":2967},{\"id\":624,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2217/32_32/blue.svg\",\"url\":\"/document/product/624\",\"slug\":\"tapd\",\"title\":\"TAPD 敏捷项目管理\",\"dictId\":2217},{\"id\":1168,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2442/32_32/blue.svg\",\"url\":\"/document/product/1168\",\"slug\":\"hrm\",\"title\":\"腾讯HR助手\",\"dictId\":2442},{\"id\":1599,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1599\",\"slug\":\"tced\",\"title\":\"腾讯云企业网盘\",\"dictId\":2902},{\"id\":1633,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1633\",\"slug\":\"tandon\",\"title\":\"腾讯云安灯\",\"dictId\":2929},{\"id\":1645,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1645\",\"slug\":\"tbs\",\"title\":\"腾讯浏览服务\",\"dictId\":2946},{\"id\":1523,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1523\",\"slug\":\"wecard\",\"title\":\"腾讯微卡\",\"dictId\":2807},{\"id\":1691,\"pid\":1094,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1691\",\"slug\":\"tcca\",\"title\":\"腾讯云 CA\",\"dictId\":2989}]},{\"id\":1703,\"pid\":0,\"groupId\":122,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3007/16_16/blue.svg\",\"url\":\"\",\"slug\":\"connector-catalog\",\"title\":\"连接器\",\"dictId\":3007,\"children\":[{\"id\":1254,\"pid\":1703,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2526/32_32/blue.svg\",\"url\":\"/document/product/1254\",\"slug\":\"tcid\",\"title\":\"账号连接器\",\"dictId\":2526},{\"id\":1270,\"pid\":1703,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2547/32_32/blue.svg\",\"url\":\"/document/product/1270\",\"slug\":\"ipaas\",\"title\":\"腾讯轻联\",\"dictId\":2547}]},{\"id\":1704,\"pid\":0,\"groupId\":123,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3010/16_16/blue.svg\",\"url\":\"\",\"slug\":\"digital-marketing-catalog\",\"title\":\"数字营销\",\"dictId\":3010,\"children\":[{\"id\":1536,\"pid\":1704,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2881/16_16/blue.svg\",\"url\":\"/document/product/1536\",\"slug\":\"nft\",\"title\":\"Web3.0 数字营销平台\",\"dictId\":2881},{\"id\":1674,\"pid\":1704,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1674\",\"slug\":\"yxt\",\"title\":\"腾讯企点营销通\",\"dictId\":2979}]},{\"id\":1706,\"pid\":0,\"groupId\":123,\"iconUrl\":\"https://main.qcloudimg.com/image/product/3012/16_16/blue.svg\",\"url\":\"\",\"slug\":\"crm-catalog\",\"title\":\"CRM\",\"dictId\":3012,\"children\":[{\"id\":1177,\"pid\":1706,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2457/32_32/blue.svg\",\"url\":\"/document/product/1177\",\"slug\":\"tqdcs\",\"title\":\"腾讯企点客服\",\"dictId\":2457}]},{\"id\":1428,\"pid\":0,\"groupId\":113,\"iconUrl\":\"https://main.qcloudimg.com/image/product/530/16_16/blue.svg\",\"url\":\"\",\"slug\":\"iot-platform-catalog\",\"title\":\"物联网\",\"dictId\":530,\"children\":[{\"id\":1081,\"pid\":1428,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2173/32_32/blue.svg\",\"url\":\"/document/product/1081\",\"slug\":\"iotexplorer\",\"title\":\"物联网开发平台\",\"dictId\":2173},{\"id\":1548,\"pid\":1428,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1548\",\"slug\":\"iotinsight\",\"title\":\"物联网设备洞察\",\"dictId\":2748},{\"id\":1131,\"pid\":1428,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2401/32_32/blue.svg\",\"url\":\"/document/product/1131\",\"slug\":\"iot-video\",\"title\":\"物联网智能视频服务(消费版)\",\"dictId\":2401},{\"id\":1361,\"pid\":1428,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1361\",\"slug\":\"iot-video-industry\",\"title\":\"物联网智能视频服务(行业版)\",\"dictId\":2631}]},{\"id\":1429,\"pid\":0,\"groupId\":113,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2702/16_16/blue.svg\",\"url\":\"\",\"slug\":\"iot-device-catalog\",\"title\":\"物联设备服务\",\"dictId\":2702,\"children\":[{\"id\":634,\"pid\":1429,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2169/32_32/blue.svg\",\"url\":\"/document/product/634\",\"slug\":\"lothub\",\"title\":\"物联网通信\",\"dictId\":2169},{\"id\":1098,\"pid\":1429,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2307/32_32/blue.svg\",\"url\":\"/document/product/1098\",\"slug\":\"tos-tiny\",\"title\":\"腾讯物联网终端操作系统\",\"dictId\":2307}]},{\"id\":1430,\"pid\":0,\"groupId\":113,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2703/16_16/blue.svg\",\"url\":\"\",\"slug\":\"iot-network-catalog\",\"title\":\"物联网络管理服务\",\"dictId\":2703,\"children\":[{\"id\":1023,\"pid\":1430,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2171/32_32/blue.svg\",\"url\":\"/document/product/1023\",\"slug\":\"lpwa\",\"title\":\"LPWA 物联网络\",\"dictId\":2171}]},{\"id\":1617,\"pid\":0,\"groupId\":120,\"iconUrl\":\"https://qcloudimg.tencent-cloud.cn/raw/9a9ecdd64c4055cc82eaef5f005fd26f.svg\",\"url\":\"\",\"slug\":\"privatecloud\",\"title\":\"私有云\",\"dictId\":0,\"children\":[{\"id\":1618,\"pid\":1617,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"https://cloud.tencent.com/privatecloud/document?solution=%E8%85%BE%E8%AE%AF%E4%B8%93%E6%9C%89%E4%BA%91%E4%BC%81%E4%B8%9A%E7%89%88%20TCE\u0026version=3.8.0\u0026folder_id=0\",\"slug\":\"tce\",\"title\":\"腾讯专有云企业版\",\"dictId\":2320},{\"id\":1619,\"pid\":1617,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"https://cloud.tencent.com/privatecloud/document?solution=%E8%85%BE%E8%AE%AF%E4%BA%91%E6%95%B0%E6%8D%AE%E5%BA%93%20TDSQL%20MySQL%E7%89%88\u0026version=V10.3.21.x.x\u0026folder_id=0\",\"slug\":\"tdsqlmysql\",\"title\":\"TDSQL MySQL 版(私有云)\",\"dictId\":0},{\"id\":1620,\"pid\":1617,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"https://cloud.tencent.com/privatecloud/document/68528526178918400/70637579687440384\",\"slug\":\"tsf-p\",\"title\":\"微服务平台 TSF(私有云)\",\"dictId\":0},{\"id\":1621,\"pid\":1617,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"https://cloud.tencent.com/privatecloud\",\"slug\":\"more-p\",\"title\":\"更多\",\"dictId\":0}]},{\"id\":1384,\"pid\":0,\"groupId\":110,\"iconUrl\":\"https://main.qcloudimg.com/image/product/546/16_16/blue.svg\",\"url\":\"\",\"slug\":\"basic-solution-catalog\",\"title\":\"通用解决方案\",\"dictId\":546,\"children\":[{\"id\":1458,\"pid\":1384,\"groupId\":0,\"iconUrl\":\"https://qcloudimg.tencent-cloud.cn/raw/23fbb54e16a737bad0ea66dcb9b7f91f.svg\",\"url\":\"/document/product/1458\",\"slug\":\"TRP\",\"title\":\"腾讯安心平台\",\"dictId\":2733},{\"id\":1651,\"pid\":1384,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1651\",\"slug\":\"ssc\",\"title\":\"企业共享服务中心\",\"dictId\":0}]},{\"id\":1389,\"pid\":0,\"groupId\":110,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2354/16_16/blue.svg\",\"url\":\"\",\"slug\":\"industry-solution-catalog\",\"title\":\"行业解决方案\",\"dictId\":2354,\"children\":[{\"id\":304,\"pid\":1389,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/304\",\"slug\":\"finance\",\"title\":\"金融云\",\"dictId\":0},{\"id\":1358,\"pid\":1389,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1358\",\"slug\":\"living-record\",\"title\":\"直播录制\",\"dictId\":0},{\"id\":680,\"pid\":1389,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/680\",\"slug\":\"tic\",\"title\":\"在线教育互动课堂\",\"dictId\":0},{\"id\":1406,\"pid\":1389,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1406\",\"slug\":\"imd\",\"title\":\"沉浸式媒体\",\"dictId\":0},{\"id\":633,\"pid\":1389,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/633\",\"slug\":\"e-commerce\",\"title\":\"电商\",\"dictId\":0}]},{\"id\":1390,\"pid\":0,\"groupId\":110,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2377/16_16/blue.svg\",\"url\":\"\",\"slug\":\"wechat-solution-catalog\",\"title\":\"微信解决方案\",\"dictId\":2377,\"children\":[{\"id\":1078,\"pid\":1390,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/raw/305769c23c3b205a346be939b7c43bab.svg\",\"url\":\"/document/product/1078\",\"slug\":\"bizlive\",\"title\":\"小程序 · 云直播\",\"dictId\":2339}]},{\"id\":1391,\"pid\":0,\"groupId\":111,\"iconUrl\":\"https://qcloudimg.tencent-cloud.cn/raw/871f7b8134d6f96434ce7f1d2715a206.svg\",\"url\":\"\",\"slug\":\"user-service\",\"title\":\"用户服务\",\"dictId\":0,\"children\":[{\"id\":378,\"pid\":1391,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/product/378\",\"slug\":\"account\",\"title\":\"账号相关\",\"dictId\":2342},{\"id\":567,\"pid\":1391,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/product/567\",\"slug\":\"console\",\"title\":\"控制台相关\",\"dictId\":0},{\"id\":1263,\"pid\":1391,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1263\",\"slug\":\"message\",\"title\":\"消息中心\",\"dictId\":2363},{\"id\":555,\"pid\":1391,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/product/555\",\"slug\":\"billing\",\"title\":\"计费相关\",\"dictId\":2343},{\"id\":578,\"pid\":1391,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/buy-guide\",\"slug\":\"buyguide\",\"title\":\"购买指导\",\"dictId\":0},{\"id\":855,\"pid\":1391,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/product/855\",\"slug\":\"activity\",\"title\":\"活动相关\",\"dictId\":0},{\"id\":1103,\"pid\":1391,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1103\",\"slug\":\"sp\",\"title\":\"服务计划\",\"dictId\":0},{\"id\":1018,\"pid\":1391,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1018\",\"slug\":\"expert-support\",\"title\":\"护航服务\",\"dictId\":0},{\"id\":282,\"pid\":1391,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/product/282\",\"slug\":\"contactus\",\"title\":\"联系我们\",\"dictId\":0}]},{\"id\":1392,\"pid\":0,\"groupId\":111,\"iconUrl\":\"https://qcloudimg.tencent-cloud.cn/raw/45c931dd662deefd8a474712b91613d5.svg\",\"url\":\"\",\"slug\":\"cldec\",\"title\":\"云生态\",\"dictId\":0,\"children\":[{\"id\":306,\"pid\":1392,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/image/product/2332/32_32/blue.svg\",\"url\":\"/document/product/306\",\"slug\":\"market\",\"title\":\"云市场\",\"dictId\":2332},{\"id\":658,\"pid\":1392,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/product/658\",\"slug\":\"laboratory\",\"title\":\"产业互联网学堂\",\"dictId\":0},{\"id\":1212,\"pid\":1392,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1212\",\"slug\":\"developer\",\"title\":\"腾讯云开发者\",\"dictId\":0},{\"id\":563,\"pid\":1392,\"groupId\":0,\"iconUrl\":\"https://main.qcloudimg.com/raw/d7165bcfd9cccd139fd9ee900e1f2df7.svg\",\"url\":\"/document/product/563\",\"slug\":\"aqudao\",\"title\":\"渠道合作伙伴\",\"dictId\":0}]},{\"id\":1393,\"pid\":0,\"groupId\":111,\"iconUrl\":\"https://qcloudimg.tencent-cloud.cn/raw/b4a7439691b0f9bb83d8b1e7464b9fb7.svg\",\"url\":\"\",\"slug\":\"more-service\",\"title\":\"更多\",\"dictId\":0,\"children\":[{\"id\":363,\"pid\":1393,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/product/363\",\"slug\":\"identification\",\"title\":\"认证信息\",\"dictId\":0},{\"id\":301,\"pid\":1393,\"groupId\":0,\"iconUrl\":null,\"url\":\"/document/product/301\",\"slug\":\"policy\",\"title\":\"政策与规范\",\"dictId\":0},{\"id\":1293,\"pid\":1393,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1293\",\"slug\":\"analyst-reports\",\"title\":\"分析师报告\",\"dictId\":0},{\"id\":1121,\"pid\":1393,\"groupId\":0,\"iconUrl\":\"\",\"url\":\"/document/product/1121\",\"slug\":\"glossary\",\"title\":\"词汇表\",\"dictId\":0}]}]],\"recommend\":[{\"title\":\"云服务器\",\"link\":\"/document/product/213\",\"key\":\"faq.cvm\"},{\"title\":\"网站备案\",\"link\":\"/document/product/243\",\"key\":\"faq.beian\"},{\"title\":\"即时通信 IM\",\"link\":\"/document/product/269\",\"key\":\"faq.im\"},{\"title\":\"对象存储\",\"link\":\"/document/product/436\",\"key\":\"faq.cos\"}]},\"relatedLink\":true},\"feedbackTags\":{\"1\":\"内容找不到\",\"2\":\"内容没更新\",\"3\":\"描述不清楚\",\"4\":\"步骤不完整\",\"5\":\"链接有错误\",\"6\":\"代码/图片缺失\",\"7\":\"找不到\",\"8\":\"不好用\",\"9\":\"看不懂\",\"10\":\"有错误\",\"11\":\"没更新\",\"12\":\"其他\"},\"ModuleType\":{\"ARTICLE_GROUP\":\"article-group\",\"TOOL_GROUP\":\"tool-group\",\"RESOURCE_GROUP\":\"resource-group\",\"FAQ_GROUP\":\"faq-group\",\"RELATION_GROUP\":\"relation-group\",\"LINK_GROUP\":\"link-group\",\"STEP_GROUP\":\"step-group\",\"VIDEO_GROUP\":\"video-group\",\"HOT_GROUP\":\"hot-group\",\"PATH_SPEC_GROUP\":\"path-spec-group\",\"STAGE_GROUP\":\"stage-group\",\"BRIEF_GROUP\":\"brief-group\",\"INTRO_GROUP\":\"intro-group\",\"STACK_GROUP\":\"stack-group\"}},\"staticContext\":{\"isMobile\":false,\"isMiniProgram\":false,\"isWechat\":false,\"isPreview\":false,\"originalUrl\":\"/document/product/647/17275\",\"CDN_DOMAIN\":\"cloudcache.tencent-cloud.com\",\"QCLOUD_DOMAIN\":\"cloud.tencent.com\",\"isLegalReferer\":true,\"ssrInfo\":{},\"language\":\"zh\",\"requestId\":\"CE6sSl2UB\"}},\"product-article\":{\"data\":{\"article\":{\"type\":\"page\",\"lang\":\"zh\",\"checkStatus\":1,\"categoryId\":647,\"content\":{\"disable\":false,\"disableTip\":\"\",\"title\":\"用户鉴权\",\"keywords\":\"视频服务 实时音视频\",\"description\":\"概览\",\"docType\":\"default\",\"isGlossary\":false,\"body\":\"\u003cdiv class=\\\"tea-editable rich-editable tse-editable\\\" data-tslate-sdk-version=\\\"0.1.13\\\" data-slate-editor=\\\"true\\\" data-slate-node=\\\"value\\\" contenteditable=\\\"false\\\" zindex=\\\"-1\\\" style=\\\"position:relative;outline:none;white-space:pre-wrap;word-wrap:break-word\\\"\u003e\u003cdiv class=\\\"anchor-element\\\"\u003e\u003ch2 data-slate-node=\\\"element\\\" class=\\\"\\\" id=\\\"UserSig\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e概览\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/h2\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e本文档主要介绍腾讯云实时音视频(TRTC)服务的两种鉴权方式,目前,腾讯云实时音视频(TRTC)、即时通信(IM)等服务都采用了 UserSig 的鉴权方式。UserSig 是腾讯云设计的一种安全保护签名,目的是为了阻止恶意攻击者盗用您的云服务使用权。如果您要使用这些基础云服务,就需要在 SDK 初始化或登录函数中提供 SDKAppID,UserID 和 UserSig 三个关键信息,具体含义如下:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDKAppID 用于标识您的应用。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eUserID 用于标识您的用户。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eUserSig 则是基于前两者计算出的安全签名,它由 \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eHMAC SHA256\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e 加密算法计算得出。只要攻击者不能伪造 UserSig,就无法盗用您的云服务流量。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"anchor-element\\\"\u003e\u003ch2 data-slate-node=\\\"element\\\" class=\\\"\\\" id=\\\".E8.B0.83.E8.AF.95.E8.B7.91.E9.80.9A.E9.98.B6.E6.AE.B5.E5.A6.82.E4.BD.95.E8.AE.A1.E7.AE.97-UserSig.EF.BC.9F\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e在调试阶段如何计算 UserSig?\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/h2\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e如果您希望快速跑通 Demo,了解 TRTC SDK 相关能力,您可以通过 \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"#client\\\" title=\\\"#client\\\" target=\\\"_self\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e客户端示例代码\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e 和 \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"#console\\\" title=\\\"#console\\\" target=\\\"_self\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e控制台\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e 两种方法计算获取 UserSig,具体请参见以下介绍。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"tse-hint ban\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan style=\\\"color:#F64041\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e不安全:\u003c/span\u003e\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e注意,如下两种 UserSig 获取计算方案仅适用于调试,如果产品要正式上线,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e不推荐\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e采用这种方案,因为客户端代码(尤其是 Web 端)中的 SECRETKEY 很容易被反编译逆向破解。一旦您的密钥泄露,攻击者就可以盗用您的腾讯云流量。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"anchor-element\\\"\u003e\u003ch3 data-slate-node=\\\"element\\\" class=\\\"\\\" id=\\\".E5.AE.A2.E6.88.B7.E7.AB.AF.E7.A4.BA.E4.BE.8B.E4.BB.A3.E7.A0.81.E8.AE.A1.E7.AE.97-UserSig\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e客户端计算 UserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/h3\u003e\u003c/div\u003e\u003cdiv class=\\\"anchor-element\\\"\u003e\u003ch4 data-slate-node=\\\"element\\\" class=\\\"\\\" id=\\\"client\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e1. 获取 SDKAPPID 和密钥\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/h4\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e登录\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e实时音视频控制台\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u0026gt; \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://console.cloud.tencent.com/trtc/app\\\" title=\\\"https://console.cloud.tencent.com/trtc/app\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e应用管理\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e单击您需查看的 SDKAppID 对应的\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e应用信息\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,单击进入\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e应用概览\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e点击SDK密钥查看\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e密钥,即可获取用于计算 UserSig 的加密密钥。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e单击\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e复制密钥\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,可将密钥拷贝到剪贴板中。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cdiv class=\\\"element image inline-image\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\" data-slate-void=\\\"true\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"image-inner\\\"\u003e\u003cfigure class=\\\"image-figure read-only\\\"\u003e\u003cdiv class=\\\"image-container\\\" data-width=\\\"974\\\" data-height=\\\"338\\\" style=\\\"width:974px;height:338px\\\"\u003e\u003cdiv class=\\\"rc-image image-with-preview\\\"\u003e\u003cimg alt=\\\"\\\" class=\\\"rc-image-img\\\" style=\\\"height:338px;width:974px\\\" src=\\\"https://qcloudimg.tencent-cloud.cn/image/document/28ad14110439c4d62e54a0769557a777.png\\\"/\u003e\u003c/div\u003e\u003c/div\u003e\u003c/figure\u003e\u003c/div\u003e\u003cspan data-slate-spacer=\\\"true\\\" style=\\\"height:0;color:transparent;outline:none;position:absolute\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"anchor-element\\\"\u003e\u003ch4 data-slate-node=\\\"element\\\" class=\\\"\\\" id=\\\"be77d919-c5ee-4ead-9fa8-379a635b0763\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e2. 计算 UserSig:\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003c/h4\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e为了方便客户端使用,我们提供各平台计算 UserSig 的源码文件,您可直接下载使用:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"table-container readonly\\\"\u003e\u003cdiv class=\\\"table-inner\\\"\u003e\u003ctable data-slate-node=\\\"element\\\" class=\\\"readonly fixed\\\"\u003e\u003ccolgroup contenteditable=\\\"false\\\"\u003e\u003ccol width=\\\"12.5%\\\"/\u003e\u003ccol width=\\\"12.5%\\\"/\u003e\u003ccol width=\\\"12.5%\\\"/\u003e\u003ccol width=\\\"12.5%\\\"/\u003e\u003ccol width=\\\"12.5%\\\"/\u003e\u003ccol width=\\\"12.5%\\\"/\u003e\u003ccol width=\\\"12.5%\\\"/\u003e\u003ccol width=\\\"12.5%\\\"/\u003e\u003c/colgroup\u003e\u003ctbody\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\" style=\\\"background-color:#f5f7fa\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eAndroid\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\" style=\\\"background-color:#f5f7fa\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eiOS\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\" style=\\\"background-color:#f5f7fa\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eWeb\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\" style=\\\"background-color:#f5f7fa\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e微信小程序\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\" style=\\\"background-color:#f5f7fa\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eWindows(C++)\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\" style=\\\"background-color:#f5f7fa\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eWindows(C#)\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\" style=\\\"background-color:#f5f7fa\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eFlutter\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\" style=\\\"background-color:#f5f7fa\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eMac\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/LiteAVSDK/TRTC_Android/tree/main/TRTC-API-Example/Debug/src/main/java/com/tencent/trtc/debug/GenerateTestUserSig.java\\\" target=\\\"_self\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/LiteAVSDK/TRTC_iOS/tree/main/TRTC-API-Example-OC/Debug/GenerateTestUserSig.h\\\" target=\\\"_self\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/LiteAVSDK/TRTC_Web/blob/main/quick-demo-js/js/libs/generateTestUserSig.js\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/LiteAVSDK/Live_WXMini/blob/main/TRTCScenesDemo/TUICallKit-WX-Demo/debug/GenerateTestUserSig.js\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/LiteAVSDK/TRTC_Windows/blob/main/TRTC-API-Example-C%2B%2B/TRTC-API-Example-Qt/src/Util/defs.h\\\" target=\\\"_self\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/LiteAVSDK/TRTC_Windows/blob/main/TRTC-API-Example-CSharp/TRTC-API-Example-CSharp/GenerateTestUserSig.cs\\\" target=\\\"_self\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/LiteAVSDK/TRTC_Flutter/blob/master/TRTC-API-Example/lib/Debug/GenerateTestUserSig.dart\\\" target=\\\"_self\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/LiteAVSDK/TRTC_Mac/tree/main/OCDemo/TRTCDemo/TRTC/GenerateTestUserSig.h\\\" target=\\\"_self\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e示例代码如下(当然您也可以参考我们各产品的 Demo 工程,详见各产品的开发文档):\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-tabs tse-tabs--dark\\\"\u003e\u003cdiv class=\\\"tse-tabs__bar\\\" contenteditable=\\\"false\\\"\u003e\u003cdiv class=\\\"tse-tabs__bar-main\\\"\u003e\u003cdiv class=\\\"tse-tabs__list\\\"\u003e\u003cdiv class=\\\"tse-tabs__item is-active\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-cont\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-label\\\"\u003eAndroid\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"tse-tabs__item\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-cont\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-label\\\"\u003eiOS\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"tse-tabs__item\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-cont\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-label\\\"\u003eWeb\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"tse-tabs__item\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-cont\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-label\\\"\u003e微信小程序\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"tse-tabs__item\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-cont\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-label\\\"\u003eWindow(C++)\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"tse-tabs__item\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-cont\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-label\\\"\u003eWindow(C#)\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"tse-tabs__item\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-cont\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-label\\\"\u003eFlutter\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"tse-tabs__item\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-cont\\\"\u003e\u003cdiv class=\\\"tse-tabs__item-label\\\"\u003eMac\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"code-block-wrap active\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"code-block-toolbar\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__item\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__btn\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__icon\\\"\u003e\u003csvg viewBox=\\\"0 0 16 16\\\" fill=\\\"currentColor\\\"\u003e\u003cpath d=\\\"M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z\\\" fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv\u003e\u003cpre class=\\\"language-java code-block\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step1: 导入源码文件\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eimport\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token namespace\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003ecom.xxx.xxx.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token class-name\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token class-name\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDKAPPID \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e xxxxxx\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\\n\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token class-name\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSECRETKEY \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026quot;xxxxxx\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step3:根据 userID,生成 userSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\\n\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token class-name\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eString\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e userSig \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token class-name\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token function\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e(\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026quot;userID\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e)\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"code-block-wrap\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"code-block-toolbar\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__item\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__btn\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__icon\\\"\u003e\u003csvg viewBox=\\\"0 0 16 16\\\" fill=\\\"currentColor\\\"\u003e\u003cpath d=\\\"M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z\\\" fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv\u003e\u003cpre class=\\\"language-objectivec code-block\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step1: 导入头文件\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token macro\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e#import \u0026quot;GenerateTestUserSig.h\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step2: 填写上一步骤中获取到的 SDKAppID,SDK 密钥\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e[\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig setSDKAPPID\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003exxxxxx\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e]\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e[\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig setSECRETKEY\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e@\u0026quot;xxxxxx\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e]\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step3:根据 userID,生成 userSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eNSString \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e*\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003euserSig \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e[\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig genTestUserSig\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e@\u0026quot;userID\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e]\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"code-block-wrap\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"code-block-toolbar\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__item\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__btn\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__icon\\\"\u003e\u003csvg viewBox=\\\"0 0 16 16\\\" fill=\\\"currentColor\\\"\u003e\u003cpath d=\\\"M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z\\\" fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv\u003e\u003cpre class=\\\"language-javascript code-block\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step1: 导入模块\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026lt;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003escript src\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026#x27;js/libs/lib-generate-test-usersig.min.js\u0026#x27;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026gt;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026lt;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e/\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003escript\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026gt;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026lt;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003escript src\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026#x27;js/libs/generateTestUserSig.js\u0026#x27;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026gt;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026lt;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e/\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003escript\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026gt;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥、输入自定义的userID,生成 userSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003econst\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e{\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003esdkAppId\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e userSig \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e}\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token function\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e(\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e{\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\\t\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token literal-property\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003esdkAppId\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e xxxxxx\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\\t\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token literal-property\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003euserId\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026#x27;xxxxxx\u0026#x27;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\\t\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token literal-property\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003esdkSecretKey\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026#x27;xxxxxx\u0026#x27;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e}\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"code-block-wrap\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"code-block-toolbar\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__item\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__btn\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__icon\\\"\u003e\u003csvg viewBox=\\\"0 0 16 16\\\" fill=\\\"currentColor\\\"\u003e\u003cpath d=\\\"M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z\\\" fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv\u003e\u003cpre class=\\\"language-javascript code-block\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step1: 导入模块\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eimport\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e{\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e genTestUserSig \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e}\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003efrom\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026#x27;GenerateTestUserSig\u0026#x27;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥、输入自定义的userID,生成 userSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003econst\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e{\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003euserSig \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e}\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token function\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e(\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e{\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\\t\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token literal-property\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003esdkAppId\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e xx\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\\t\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token literal-property\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003euserId\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026#x27;xxxxxx\u0026#x27;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\\t\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token literal-property\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003esdkSecretKey\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026#x27;xxxxxx\u0026#x27;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e}\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e)\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"code-block-wrap\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"code-block-toolbar\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__item\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__btn\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__icon\\\"\u003e\u003csvg viewBox=\\\"0 0 16 16\\\" fill=\\\"currentColor\\\"\u003e\u003cpath d=\\\"M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z\\\" fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv\u003e\u003cpre class=\\\"language-cpp code-block\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step1: 导入头文件\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token macro\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e#include \u0026quot;GenerateTestUserSig.h\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003econst\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eint\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e SDKAPPID \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e xxxxxx\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003econst\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003echar\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e*\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e SECRETKEY \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026quot;xxxxxx\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step3:根据 userID,生成 userSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003econst\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003echar\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e*\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e userSig \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token class-name\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token double-colon\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e::\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token function\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e(\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026quot;userID\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e SDKAPPID\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e SECRETKEY\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e)\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"code-block-wrap\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"code-block-toolbar\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__item\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__btn\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__icon\\\"\u003e\u003csvg viewBox=\\\"0 0 16 16\\\" fill=\\\"currentColor\\\"\u003e\u003cpath d=\\\"M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z\\\" fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv\u003e\u003cpre class=\\\"language-csharp code-block\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step1: 导入头文件\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eusing\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token namespace\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step2: 填写上一步骤中获取到的 SDKAppID 和 SDK 密钥\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDKAPPID \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e xxxxxx\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSECRETKEY \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026quot;xxxxxx\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step3:根据 userID,生成 userSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token class-name\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003estring\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e userSig \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e GenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token function\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGetInstance\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e(\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e)\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token function\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e(\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026quot;userID\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e)\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"code-block-wrap\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"code-block-toolbar\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__item\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__btn\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__icon\\\"\u003e\u003csvg viewBox=\\\"0 0 16 16\\\" fill=\\\"currentColor\\\"\u003e\u003cpath d=\\\"M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z\\\" fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv\u003e\u003cpre class=\\\"language-django code-block\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e//\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eStep1\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e 导入源码文件\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token keyword\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eimport\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026#x27;package:xxx/GenerateTestUserSig.dart\u0026#x27;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e//\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eStep2\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e 填写上一步骤中获取到的 \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDKAppID\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDK\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e 密钥\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDKAPPID\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003exxxxxx\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSECRETKEY\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026quot;xxxxxx\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e//\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eStep3\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:根据 \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003euserID\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,生成 \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003euserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eString\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003euserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token variable\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token function\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenTestUserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e(\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e\u0026quot;userID\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e)\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"code-block-wrap\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"code-block-toolbar\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__item\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__btn\\\"\u003e\u003cdiv class=\\\"code-block-toolbar__icon\\\"\u003e\u003csvg viewBox=\\\"0 0 16 16\\\" fill=\\\"currentColor\\\"\u003e\u003cpath d=\\\"M11 14.75C11.4142 14.75 11.75 14.4142 11.75 14V11.75H14C14.4142 11.75 14.75 11.4142 14.75 11V2C14.75 1.58579 14.4142 1.25 14 1.25H5C4.58579 1.25 4.25 1.58579 4.25 2V4.25H2C1.58579 4.25 1.25 4.58579 1.25 5V14C1.25 14.4142 1.58579 14.75 2 14.75H11ZM5.75 4.25V2.75H13.25V10.25H11.75V5C11.75 4.58579 11.4142 4.25 11 4.25H5.75ZM5 5.75H2.75V13.25H10.25V5.75H5Z\\\" fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv\u003e\u003cpre class=\\\"language-objectivec code-block\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step1: 导入头文件\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token macro\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e#import \u0026quot;GenerateTestUserSig.h\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step2: 填写上一步骤中获取到的\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDKAppID,SDK 密钥\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e[\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig setSDKAPPID\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003exxxxxx\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e]\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e[\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig setSECRETKEY\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e@\u0026quot;xxxxxx\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e]\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token comment\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e// Step3:根据 userID,生成 userSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eNSString \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e*\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003euserSig \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token operator\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e=\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e[\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenerateTestUserSig genTestUserSig\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token string\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e@\u0026quot;userID\u0026quot;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e]\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\" class=\\\"prism-token token punctuation\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003cdiv class=\\\"anchor-element\\\"\u003e\u003ch3 data-slate-node=\\\"element\\\" class=\\\"\\\" id=\\\"console\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e控制台获取 UserSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/h3\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e登录\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e实时音视频控制台\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,进入\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e开发辅助\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e \u0026gt; \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://console.cloud.tencent.com/trtc/usersigtool\\\" title=\\\"https://console.cloud.tencent.com/trtc/usersigtool\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eUserSig生成\u0026amp;校验\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e在签名(UserSig)生成工具下,选择对应的 SDKAppID 和 UserID。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ul\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-ul-symbol\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"tse-ul-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e单击\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cb\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e生成签名(UserSig)\u003c/span\u003e\u003c/b\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e,即可计算得到对应的 UserSig。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan style=\\\"color:red\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cdiv class=\\\"element image inline-image\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\" data-slate-void=\\\"true\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"image-inner\\\"\u003e\u003cfigure class=\\\"image-figure read-only\\\"\u003e\u003cdiv class=\\\"image-container\\\" data-width=\\\"974\\\" data-height=\\\"502\\\" style=\\\"width:974px;height:502px\\\"\u003e\u003cdiv class=\\\"rc-image image-with-preview\\\"\u003e\u003cimg alt=\\\"\\\" class=\\\"rc-image-img\\\" style=\\\"height:502px;width:974px\\\" src=\\\"https://qcloudimg.tencent-cloud.cn/image/document/ebf02e0c558ffdd8a7d7d42b4b9d395c.png\\\"/\u003e\u003c/div\u003e\u003c/div\u003e\u003c/figure\u003e\u003c/div\u003e\u003cspan data-slate-spacer=\\\"true\\\" style=\\\"height:0;color:transparent;outline:none;position:absolute\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"anchor-element\\\"\u003e\u003ch2 data-slate-node=\\\"element\\\" class=\\\"\\\" id=\\\"formal\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e在正式运行阶段如何计算 UserSig?\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/h2\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e业务正式运行阶段,TRTC 提供安全等级更高的服务端计算 UserSig 的方案,可以最大限度地保障计算 UserSig 用的密钥不被泄露,因为攻破一台服务器的难度要高于逆向一款 App。具体的实现流程如下:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cdiv class=\\\"element image inline-image\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\" data-slate-void=\\\"true\\\"\u003e\u003cdiv contenteditable=\\\"false\\\" class=\\\"image-inner\\\"\u003e\u003cfigure class=\\\"image-figure read-only\\\"\u003e\u003cdiv class=\\\"image-container\\\" data-width=\\\"960\\\" data-height=\\\"611\\\" style=\\\"width:960px;height:611px\\\"\u003e\u003cdiv class=\\\"rc-image image-with-preview\\\"\u003e\u003cimg alt=\\\"\\\" class=\\\"rc-image-img\\\" style=\\\"height:611px;width:960px\\\" src=\\\"https://qcloudimg.tencent-cloud.cn/image/document/a17b8daa131b6f740c1b831fa3536aaf.png\\\"/\u003e\u003c/div\u003e\u003c/div\u003e\u003c/figure\u003e\u003c/div\u003e\u003cspan data-slate-spacer=\\\"true\\\" style=\\\"height:0;color:transparent;outline:none;position:absolute\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ol\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-markdown-ol-order\\\"\u003e1.\u003c!-- --\u003e \u003c/span\u003e\u003cspan class=\\\"tse-markdown-ol-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e您的 App 在调用 SDK 的初始化函数之前,首先要向您的服务器请求 UserSig。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ol\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-markdown-ol-order\\\"\u003e2.\u003c!-- --\u003e \u003c/span\u003e\u003cspan class=\\\"tse-markdown-ol-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e您的服务器根据 SDKAppID 和 UserID 计算 UserSig,计算源码见文档前半部分。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ol\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-markdown-ol-order\\\"\u003e3.\u003c!-- --\u003e \u003c/span\u003e\u003cspan class=\\\"tse-markdown-ol-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e服务器将计算好的 UserSig 返回给您的 App。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ol\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-markdown-ol-order\\\"\u003e4.\u003c!-- --\u003e \u003c/span\u003e\u003cspan class=\\\"tse-markdown-ol-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e您的 App 将获得的 UserSig 通过特定 API 传递给 SDK。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ol\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-markdown-ol-order\\\"\u003e5.\u003c!-- --\u003e \u003c/span\u003e\u003cspan class=\\\"tse-markdown-ol-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDK 将 \u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003ccode\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eSDKAppID + UserID + UserSig\u003c/span\u003e\u003c/code\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e 提交给腾讯云服务器进行校验。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ol\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-markdown-ol-order\\\"\u003e6.\u003c!-- --\u003e \u003c/span\u003e\u003cspan class=\\\"tse-markdown-ol-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e腾讯云校验 UserSig,确认合法性。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv data-slate-node=\\\"element\\\" class=\\\"tse-markdown-ol\\\"\u003e\u003cspan contenteditable=\\\"false\\\" class=\\\"tse-markdown-ol-order\\\"\u003e7.\u003c!-- --\u003e \u003c/span\u003e\u003cspan class=\\\"tse-markdown-ol-content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e校验通过后,会向 TRTCSDK 提供实时音视频服务。\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"n\\\" data-slate-length=\\\"0\\\"\u003e\u003cbr/\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e为了简化您的实现过程,我们提供了多个语言版本的 UserSig 计算源代码及其示例:\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv class=\\\"table-container readonly\\\"\u003e\u003cdiv class=\\\"table-inner\\\"\u003e\u003ctable data-slate-node=\\\"element\\\" class=\\\"readonly\\\"\u003e\u003ccolgroup contenteditable=\\\"false\\\"\u003e\u003ccol width=\\\"23%\\\"/\u003e\u003ccol width=\\\"29%\\\"/\u003e\u003ccol width=\\\"23%\\\"/\u003e\u003ccol width=\\\"23%\\\"/\u003e\u003c/colgroup\u003e\u003ctbody\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e语言版本\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e签名算法\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e源代码\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"is-header selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003e使用示例\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eJava\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eHMAC-SHA256\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-java/blob/master/src/main/java/com/tencentyun/TLSSigAPIv2.java\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-java/blob/master/src/main/java/com/tencentyun/TLSSigAPIv2.java\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-java\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-java\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-zero-width=\\\"z\\\" data-slate-length=\\\"0\\\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGO\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eHMAC-SHA256\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-golang/blob/master/tencentyun/TLSSigAPI.go\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-golang/blob/master/tencentyun/TLSSigAPI.go\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-golang\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-golang\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003ePHP\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eHMAC-SHA256\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-php/blob/master/src/TLSSigAPIv2.php\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-php/blob/master/src/TLSSigAPIv2.php\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-php\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-php\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eNode.js\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eHMAC-SHA256\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-node/blob/master/TLSSigAPIv2.js\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-node/blob/master/TLSSigAPIv2.js\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-node\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-node\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003ePython\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eHMAC-SHA256\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-python/blob/master/TLSSigAPIv2.py\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-python/blob/master/TLSSigAPIv2.py\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003egenSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-python\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-python\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr data-slate-node=\\\"element\\\" class=\\\"\\\"\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eC#\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eHMAC-SHA256\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-cs/blob/master/tls-sig-api-v2-cs/TLSSigAPIv2.cs\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-cs/blob/master/tls-sig-api-v2-cs/TLSSigAPIv2.cs\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGenSig\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003ctd data-slate-node=\\\"element\\\" class=\\\"selectable-area\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003cdiv class=\\\"\\\" data-slate-node=\\\"element\\\"\u003e\u003ca class=\\\"ref\\\" href=\\\"https://github.com/tencentyun/tls-sig-api-v2-cs\\\" title=\\\"https://github.com/tencentyun/tls-sig-api-v2-cs\\\" target=\\\"_blank\\\" data-slate-node=\\\"element\\\" data-slate-inline=\\\"true\\\"\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003cspan class=\\\"content\\\"\u003e\u003cspan data-slate-node=\\\"text\\\"\u003e\u003cspan data-slate-leaf=\\\"true\\\"\u003e\u003cspan data-slate-string=\\\"true\\\"\u003eGithub\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan contenteditable=\\\"false\\\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/div\u003e\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\",\"showToc\":true,\"toc\":\"\u003cli\u003e\u003ca href=\\\"#UserSig\\\" title=\\\"概览\\\"\u003e概览\u003c/a\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"#.E8.B0.83.E8.AF.95.E8.B7.91.E9.80.9A.E9.98.B6.E6.AE.B5.E5.A6.82.E4.BD.95.E8.AE.A1.E7.AE.97-UserSig.EF.BC.9F\\\" title=\\\"在调试阶段如何计算 UserSig?\\\"\u003e在调试阶段如何计算 UserSig?\u003c/a\u003e\u003cul class=\\\"tea-slate-sdk-toc-list no-border\\\"\u003e\u003cli\u003e\u003ca href=\\\"#.E5.AE.A2.E6.88.B7.E7.AB.AF.E7.A4.BA.E4.BE.8B.E4.BB.A3.E7.A0.81.E8.AE.A1.E7.AE.97-UserSig\\\" title=\\\"客户端计算 UserSig\\\"\u003e客户端计算 UserSig\u003c/a\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"#console\\\" title=\\\"控制台获取 UserSig\\\"\u003e控制台获取 UserSig\u003c/a\u003e\u003c/li\u003e\u003c/ul\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"#formal\\\" title=\\\"在正式运行阶段如何计算 UserSig?\\\"\u003e在正式运行阶段如何计算 UserSig?\u003c/a\u003e\u003c/li\u003e\",\"recentReleaseTime\":\"2024-10-25 15:39:51\",\"videoConfig\":{\"position\":\"top\",\"list\":[]},\"githubUrl\":\"https://github.com/tencentyun/qcloud-documents/blob/master/product/视频服务/实时音视频/常见问题/如何计算UserSig.md\",\"isSlate\":true,\"writeNodeId\":\"86735811695435776\",\"displayEditEntry\":true,\"slate\":\"\\\"[{\\\\\\\"id\\\\\\\":\\\\\\\"AmAonsprVsDjrnzkhyB0R\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"概览\\\\\\\"}],\\\\\\\"nodeId\\\\\\\":\\\\\\\"UserSig\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"h2\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"vSkqnh6jdgMyidcaRGtkk\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"本文档主要介绍腾讯云实时音视频(TRTC)服务的两种鉴权方式,目前,腾讯云实时音视频(TRTC)、即时通信(IM)等服务都采用了 UserSig 的鉴权方式。UserSig 是腾讯云设计的一种安全保护签名,目的是为了阻止恶意攻击者盗用您的云服务使用权。如果您要使用这些基础云服务,就需要在 SDK 初始化或登录函数中提供 SDKAppID,UserID 和 UserSig 三个关键信息,具体含义如下:\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"nodeId\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"4HiYk3VcQaBWNVDvfVlsk\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"nodeId\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"SDKAppID 用于标识您的应用。\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"GOXznn4GTGZmAERvDxAs_\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"nodeId\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"UserID 用于标识您的用户。\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"KDzF8lZA9MNFqo6Eo6yS3\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"nodeId\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"UserSig 则是基于前两者计算出的安全签名,它由 \\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"HMAC SHA256\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\" 加密算法计算得出。只要攻击者不能伪造 UserSig,就无法盗用您的云服务流量。\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"A65eCFHIHU7gX71WUlWlr\\\\\\\",\\\\\\\"nodeId\\\\\\\":\\\\\\\".E8.B0.83.E8.AF.95.E8.B7.91.E9.80.9A.E9.98.B6.E6.AE.B5.E5.A6.82.E4.BD.95.E8.AE.A1.E7.AE.97-UserSig.EF.BC.9F\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"h2\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"在调试阶段如何计算 UserSig?\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"5dzfCEr4oTNZ2EoNFjAQF\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"如果您希望快速跑通 Demo,了解 TRTC SDK 相关能力,您可以通过 \\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"ZbEbnNn8a8As67hss9uXg\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"客户端示例代码\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"#client\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"#client\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"self\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\" 和 \\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"cpltdleHlaipfWmyKxk5D\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"控制台\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"#console\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"#console\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"self\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\" 两种方法计算获取 UserSig,具体请参见以下介绍。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"hint\\\\\\\",\\\\\\\"hintType\\\\\\\":\\\\\\\"ban\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"b\\\\\\\":1,\\\\\\\"text\\\\\\\":\\\\\\\"不安全:\\\\\\\",\\\\\\\"color\\\\\\\":\\\\\\\"#F64041\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"mCd4ShHXew-ok2PyPSjyh\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"注意,如下两种 UserSig 获取计算方案仅适用于调试,如果产品要正式上线,\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"不推荐\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\"采用这种方案,因为客户端代码(尤其是 Web 端)中的 SECRETKEY 很容易被反编译逆向破解。一旦您的密钥泄露,攻击者就可以盗用您的腾讯云流量。\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"aFZdyHohqwX3W7eqhQjWB\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"OgPW4zZUY3mLsAuOT6jvs\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"9anSf9zjU4tKSLGU6JKpR\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"客户端计算 UserSig\\\\\\\"}],\\\\\\\"nodeId\\\\\\\":\\\\\\\".E5.AE.A2.E6.88.B7.E7.AB.AF.E7.A4.BA.E4.BE.8B.E4.BB.A3.E7.A0.81.E8.AE.A1.E7.AE.97-UserSig\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"h3\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"1FneCKqxCwm70BaILlbYA\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"1. 获取 SDKAPPID 和密钥\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\":\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"h4\\\\\\\",\\\\\\\"start\\\\\\\":true,\\\\\\\"nodeId\\\\\\\":\\\\\\\"client\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"3ql_XUZERZrOO9MtcL9KZ\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"登录\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"实时音视频控制台\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\" \\\\u003E \\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"2uoAVI9o_Yg64PjxBIEtP\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"应用管理\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fconsole.cloud.tencent.com\\\\u002Ftrtc\\\\u002Fapp\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fconsole.cloud.tencent.com\\\\u002Ftrtc\\\\u002Fapp\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"start\\\\\\\":true},{\\\\\\\"id\\\\\\\":\\\\\\\"FwQRYEqUDR07cjJ-bcrem\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"单击您需查看的 SDKAppID 对应的\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"应用信息\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\",单击进入\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"应用概览\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\"。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"pX8HqS86d3dOEDKa64ZV3\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"点击SDK密钥查看\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\"密钥,即可获取用于计算 UserSig 的加密密钥。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"iJB_usnHTZziNfpdqg0jP\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"单击\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"复制密钥\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\",可将密钥拷贝到剪贴板中。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"jEXCVlXwt9SfJT-Oi7Wg8\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"image\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fqcloudimg.tencent-cloud.cn\\\\u002Fimage\\\\u002Fdocument\\\\u002F28ad14110439c4d62e54a0769557a777.png\\\\\\\",\\\\\\\"alt\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"inline\\\\\\\":true,\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"qzqYmUjBMZhzj6YLCPv-i\\\\\\\",\\\\\\\"naturalSize\\\\\\\":[2092,726],\\\\\\\"size\\\\\\\":[974,338]},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"hyLVEqHyOpthjwXkidrjj\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"2. 计算 UserSig:\\\\\\\",\\\\\\\"b\\\\\\\":1}],\\\\\\\"type\\\\\\\":\\\\\\\"h4\\\\\\\",\\\\\\\"start\\\\\\\":false,\\\\\\\"nodeId\\\\\\\":\\\\\\\"be77d919-c5ee-4ead-9fa8-379a635b0763\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"7TrdsjTuP3FIKo2PRmcGW\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"为了方便客户端使用,我们提供各平台计算 UserSig 的源码文件,您可直接下载使用:\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"table\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Android\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"jm1OQVZN0_1Wvp55OaleG\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"EfrK8Nh2swPru-dy2JeUC\\\\\\\",\\\\\\\"fillColor\\\\\\\":\\\\\\\"#f5f7fa\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"iOS\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"cJqnVxh0LscUsBL7KYxbc\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"zYTNSPB8Cjn2Q7J6QSSLV\\\\\\\",\\\\\\\"fillColor\\\\\\\":\\\\\\\"#f5f7fa\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Web\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"naEEzC_JqOkJ27gW0RMjz\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"1iVHjZcsOC4-obO67ssRx\\\\\\\",\\\\\\\"fillColor\\\\\\\":\\\\\\\"#f5f7fa\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"微信小程序\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"XqlVL2Ij-SHMyiEvvYYAQ\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"43CI6tK-kd_zEot9IKpXM\\\\\\\",\\\\\\\"fillColor\\\\\\\":\\\\\\\"#f5f7fa\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Windows(C++)\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"4xbDpVKT5Oavp7un4LuiF\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"O6bfHVhSXejJmAbTpOHiY\\\\\\\",\\\\\\\"fillColor\\\\\\\":\\\\\\\"#f5f7fa\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Windows(C#)\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"KhXjk04WW2MdDP8-xCIYZ\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"NuGKdrWMOTFNOvO2_lFq5\\\\\\\",\\\\\\\"fillColor\\\\\\\":\\\\\\\"#f5f7fa\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Flutter\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"GrsFQlECbi5f_UBkoUUyW\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"iBJ71HS935QFU20YTsFoa\\\\\\\",\\\\\\\"fillColor\\\\\\\":\\\\\\\"#f5f7fa\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Mac\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"fv-b8pv00xnQqp14QxFeD\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"LUrpkFyXSWPoQUYzzimCG\\\\\\\",\\\\\\\"fillColor\\\\\\\":\\\\\\\"#f5f7fa\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"D-Jz7JpJA8ZOQs4p4H8kt\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"sKnK6u6YjqxdEYVFGEhvn\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002FLiteAVSDK\\\\u002FTRTC_Android\\\\u002Ftree\\\\u002Fmain\\\\u002FTRTC-API-Example\\\\u002FDebug\\\\u002Fsrc\\\\u002Fmain\\\\u002Fjava\\\\u002Fcom\\\\u002Ftencent\\\\u002Ftrtc\\\\u002Fdebug\\\\u002FGenerateTestUserSig.java\\\\\\\"},\\\\\\\"linkTarget\\\\\\\":\\\\\\\"self\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"0b_6s1UqE8LUmC1wdwAf3\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"AjNLc6vRj4Fk_Hs1Uhg67\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"CGanfk1N5o7yZPpeCtEvF\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002FLiteAVSDK\\\\u002FTRTC_iOS\\\\u002Ftree\\\\u002Fmain\\\\u002FTRTC-API-Example-OC\\\\u002FDebug\\\\u002FGenerateTestUserSig.h\\\\\\\"},\\\\\\\"linkTarget\\\\\\\":\\\\\\\"self\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"2584op4Q7i8REHmYAmrGo\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"cX_ww473rCPL18Kf-DbiJ\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002FLiteAVSDK\\\\u002FTRTC_Web\\\\u002Fblob\\\\u002Fmain\\\\u002Fquick-demo-js\\\\u002Fjs\\\\u002Flibs\\\\u002FgenerateTestUserSig.js\\\\\\\"},\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"ng5yh_WR0klLZFhjKSkeM\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"H_hCgAKyno1Vd-uIFcW6q\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"dSiDMs7KDIOqzLMMXM5SE\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002FLiteAVSDK\\\\u002FLive_WXMini\\\\u002Fblob\\\\u002Fmain\\\\u002FTRTCScenesDemo\\\\u002FTUICallKit-WX-Demo\\\\u002Fdebug\\\\u002FGenerateTestUserSig.js\\\\\\\"},\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"h6sCE-tlKiaxvbb56ackv\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"a0uVHBKsmopdO4WDBvxAP\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"XSbDR8WVjSK4GI1cf_j80\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"fWxoATWWBkzJGEF9iKjXb\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002FLiteAVSDK\\\\u002FTRTC_Windows\\\\u002Fblob\\\\u002Fmain\\\\u002FTRTC-API-Example-C%2B%2B\\\\u002FTRTC-API-Example-Qt\\\\u002Fsrc\\\\u002FUtil\\\\u002Fdefs.h\\\\\\\"},\\\\\\\"linkTarget\\\\\\\":\\\\\\\"self\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"jSvV4nft8YDk6oF-wjzL4\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"k5fa2iObt6enFbTDrCNQe\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"zSq-Q8MsJuxXDrFEhLXvC\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002FLiteAVSDK\\\\u002FTRTC_Windows\\\\u002Fblob\\\\u002Fmain\\\\u002FTRTC-API-Example-CSharp\\\\u002FTRTC-API-Example-CSharp\\\\u002FGenerateTestUserSig.cs\\\\\\\"},\\\\\\\"linkTarget\\\\\\\":\\\\\\\"self\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"5TxKIf50MoyAhgFtfmACQ\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"R72WKlfzrGeP1XW05rwu0\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"EILIhYFOpqV6VukgCiRJj\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002FLiteAVSDK\\\\u002FTRTC_Flutter\\\\u002Fblob\\\\u002Fmaster\\\\u002FTRTC-API-Example\\\\u002Flib\\\\u002FDebug\\\\u002FGenerateTestUserSig.dart\\\\\\\"},\\\\\\\"linkTarget\\\\\\\":\\\\\\\"self\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"CTTGTxwGo7oTC5rG7vaL5\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"McY3segM3VkTBfgRoNQwS\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"ss2YyXSJv3rgB5QXN6Koo\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002FLiteAVSDK\\\\u002FTRTC_Mac\\\\u002Ftree\\\\u002Fmain\\\\u002FOCDemo\\\\u002FTRTCDemo\\\\u002FTRTC\\\\u002FGenerateTestUserSig.h\\\\\\\"},\\\\\\\"linkTarget\\\\\\\":\\\\\\\"self\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"O4t7giYoIICEbGTw8x2z1\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"hnh6F9D02Hh5isQDwlV3a\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"3VZj-wKEZ_Mh_qDtM9C9q\\\\\\\"}],\\\\\\\"widthMode\\\\\\\":\\\\\\\"percentage\\\\\\\",\\\\\\\"widths\\\\\\\":[12.5,12.5,12.5,12.5,12.5,12.5,12.5,12.5],\\\\\\\"id\\\\\\\":\\\\\\\"_U-LKfAokx2EgJviMVeZ9\\\\\\\",\\\\\\\"rowHeader\\\\\\\":true},{\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"示例代码如下(当然您也可以参考我们各产品的 Demo 工程,详见各产品的开发文档):\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"S9pGFpA9Sax28jVZetfnD\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-blocks\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-block\\\\\\\",\\\\\\\"language\\\\\\\":\\\\\\\"java\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"SnF0vZ85DNmrlmq-v_nZk\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"Android\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"7gHU0AZ5ocfrk_oScapIC\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step1: 导入源码文件\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"QQnvTZ-zyAa6nPhmi4Vnj\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"import com.xxx.xxx.GenerateTestUserSig;\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"kE8v4vp5vrqU6GQJEOthO\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"VA5gIPt870s4Sx3g6TIL8\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"OCEULNwJnetdYaDxgUb3l\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"GenerateTestUserSig.SDKAPPID = xxxxxx;\\\\\\\\nGenerateTestUserSig.SECRETKEY = \\\\\\\\\\\\\\\"xxxxxx\\\\\\\\\\\\\\\";\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"TQa6yv1kvctD9BQCBLAYc\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"VQTt1Wk6NG9Mok99CnSzL\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step3:根据 userID,生成 userSig\\\\\\\\nString userSig = GenerateTestUserSig.genTestUserSig(\\\\\\\\\\\\\\\"userID\\\\\\\\\\\\\\\");\\\\\\\"}]}],\\\\\\\"autoWrap\\\\\\\":false},{\\\\\\\"type\\\\\\\":\\\\\\\"code-block\\\\\\\",\\\\\\\"language\\\\\\\":\\\\\\\"objectivec\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"Oay_PRsb34HX-bkC1B8UL\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"iOS\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step1: 导入头文件\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"sB_LsCWjfNF0Q7UhPNPdV\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"J2mm5fFuzTpne8Nq7d4UU\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"#import \\\\\\\\\\\\\\\"GenerateTestUserSig.h\\\\\\\\\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"tRhokx7Aajwc_uxERtwNk\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"sayJeHUM2ASKlQg4-zk0L\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step2: 填写上一步骤中获取到的 SDKAppID,SDK 密钥\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"K4eW2wOsg-4PNotooje9Q\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"[GenerateTestUserSig setSDKAPPID:xxxxxx];\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"56hjza-p9Si3O0o3x3XaN\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"[GenerateTestUserSig setSECRETKEY:@\\\\\\\\\\\\\\\"xxxxxx\\\\\\\\\\\\\\\"];\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"-4xlL0J-9l0iLAc8T9ulw\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step3:根据 userID,生成 userSig\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"qjzRaeodbBckvnMg9li9U\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"A9oxa4xQ_zZhgrIFxhoS1\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"NSString *userSig = [GenerateTestUserSig genTestUserSig:@\\\\\\\\\\\\\\\"userID\\\\\\\\\\\\\\\"];\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"Yck_e6Z_QL2KWeNJkYqva\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]}],\\\\\\\"autoWrap\\\\\\\":false},{\\\\\\\"type\\\\\\\":\\\\\\\"code-block\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"eaDictcWxGTXUYkB4x3hJ\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"Web\\\\\\\",\\\\\\\"language\\\\\\\":\\\\\\\"javascript\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step1: 导入模块\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"A9_T7WE-kRhDjvN4NAxAS\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"T7xZmdbgvqZYira3yWTTR\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u003Cscript src='js\\\\u002Flibs\\\\u002Flib-generate-test-usersig.min.js'\\\\u003E\\\\u003C\\\\u002Fscript\\\\u003E\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"qXrJgWL3Z9BWBlWDcHsRw\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u003Cscript src='js\\\\u002Flibs\\\\u002FgenerateTestUserSig.js'\\\\u003E\\\\u003C\\\\u002Fscript\\\\u003E\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"XFIwl8dO84Vc6_Qv3ZaDo\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥、输入自定义的userID,生成 userSig\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"dCCiSsONaxsnWiadsJUYJ\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"F1eKOWb2G8pvaiSKtXtSo\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"const {sdkAppId, userSig } = genTestUserSig({\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"7IH-b0MWVfQD90NurnpXf\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\\tsdkAppId: xxxxxx, \\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"0BWla66Z-vJir2A_PU6Y-\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\\tuserId: 'xxxxxx',\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"fafzqMseqTEsvjDpC0AV8\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\\tsdkSecretKey: 'xxxxxx',\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"H3_awzDn-42ScdI2fz8EI\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"}\\\\\\\"}]}],\\\\\\\"autoWrap\\\\\\\":false},{\\\\\\\"type\\\\\\\":\\\\\\\"code-block\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"ygYddqNnWWgr6SVLrN6lQ\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"微信小程序\\\\\\\",\\\\\\\"language\\\\\\\":\\\\\\\"javascript\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step1: 导入模块\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"sBPATzqyR7GrUsyCUGNFZ\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"EkkLSipDl9u-oJUqXx2dd\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"import { genTestUserSig } from 'GenerateTestUserSig';\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"UHTm5PQVRsZopNUKyE0VU\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥、输入自定义的userID,生成 userSig\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"pVxywJwKhsHscya9g7v-A\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"_otRwNFFXWydszinawbb-\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"const {userSig } = genTestUserSig({\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"sso6U8io_NNuS7jGyQPuG\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\\tsdkAppId: xx, \\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"zf184M6HUTgTSsqjqYMrM\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\\tuserId: 'xxxxxx',\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"O711zHBrq2eV33xqxQdTp\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\\tsdkSecretKey: 'xxxxxx'\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"Hq_bAHl_L2qfEnIyrsBr8\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\" })\\\\\\\"}]}],\\\\\\\"autoWrap\\\\\\\":false},{\\\\\\\"type\\\\\\\":\\\\\\\"code-block\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"URU6WZmizDrtS0OFO5eEU\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"Window(C++)\\\\\\\",\\\\\\\"language\\\\\\\":\\\\\\\"cpp\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step1: 导入头文件\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"G6V0EeqUb6idlsmMImTUi\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"#include \\\\\\\\\\\\\\\"GenerateTestUserSig.h\\\\\\\\\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"UXD_vIUD-zaAnpmwu8kK_\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"JQIUzGW3sbow_TRb0pAhl\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"hT7srbcqsCtbpIt8vMDPI\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"const int SDKAPPID = xxxxxx;\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"GH80h0uJK3ZWc11xB_HBY\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"const char* SECRETKEY = \\\\\\\\\\\\\\\"xxxxxx\\\\\\\\\\\\\\\";\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"TzqFO167ILGgeeno6q8b8\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"Hqgvvcq-AIDPEVXjQTOur\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step3:根据 userID,生成 userSig\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"2RTdmb42FkkxXV8TgmeyF\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"const char* userSig = GenerateTestUserSig::genTestUserSig(\\\\\\\\\\\\\\\"userID\\\\\\\\\\\\\\\", SDKAPPID, SECRETKEY);\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"XaU8PIZtirkekhiZ-FBF5\\\\\\\"}],\\\\\\\"autoWrap\\\\\\\":false},{\\\\\\\"type\\\\\\\":\\\\\\\"code-block\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"6a_S0VIutg2pk-fDX30A9\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"Window(C#)\\\\\\\",\\\\\\\"language\\\\\\\":\\\\\\\"csharp\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step1: 导入头文件\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"aeTSLhqEBw1bxqO1D9b1D\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"using GenerateTestUserSig;\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"hgAX6-iWmXBA-eJb7eGeN\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"nE5N2MGnLnHmV23lcgqNV\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step2: 填写上一步骤中获取到的 SDKAppID 和 SDK 密钥\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"AkdHGPyQAFEBwG9qDwpCg\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"GenerateTestUserSig.SDKAPPID = xxxxxx; \\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"m2-At3GjpOv_m0H5Eb2vV\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"GenerateTestUserSig.SECRETKEY = \\\\\\\\\\\\\\\"xxxxxx\\\\\\\\\\\\\\\";\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"EdKGqTM1xN9uZU27QDgkI\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"DUwf1Pj-hsGeP2qA-vQp9\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step3:根据 userID,生成 userSig\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"HZHc0YMxoasAE03D9SIYR\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"string userSig = GenerateTestUserSig.GetInstance().GenTestUserSig(\\\\\\\\\\\\\\\"userID\\\\\\\\\\\\\\\");\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"R2QhpLGLwtr419y9khEKE\\\\\\\"}],\\\\\\\"autoWrap\\\\\\\":false},{\\\\\\\"type\\\\\\\":\\\\\\\"code-block\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"EcmneDvsR97lOgaVUdd49\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"Flutter\\\\\\\",\\\\\\\"language\\\\\\\":\\\\\\\"django\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step1: 导入源码文件\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"ixmpmaG_-FkvVwI_6HIUD\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"TTHIf7HUBTBaHcwjz8tiT\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"import 'package:xxx\\\\u002FGenerateTestUserSig.dart';\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"g-8tSvt0fU0-eRhx4dd66\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"CDQc0A6aH2dFZXfClBZ49\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step2: 填写上一步骤中获取到的 SDKAppID,SDK 密钥\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"vxtX64FyF0g60s04iikDM\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"GenerateTestUserSig.SDKAPPID = xxxxxx;\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"XiTmyfXmQTl0NR85wcJAB\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"GenerateTestUserSig.SECRETKEY = \\\\\\\\\\\\\\\"xxxxxx\\\\\\\\\\\\\\\";\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"Xef_n111icb60wMc_m0uh\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step3:根据 userID,生成 userSig\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"dYjwbocvRJbIEhtiSCo7J\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"MbjOz7AaKLXGua3E3tAT_\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"String userSig = GenerateTestUserSig.genTestUserSig(\\\\\\\\\\\\\\\"userID\\\\\\\\\\\\\\\");\\\\\\\"}]}],\\\\\\\"autoWrap\\\\\\\":false},{\\\\\\\"type\\\\\\\":\\\\\\\"code-block\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"_C2FLWjL10nSEs1u8dbyZ\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"Mac\\\\\\\",\\\\\\\"language\\\\\\\":\\\\\\\"objectivec\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step1: 导入头文件\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"m40a8Ap9-foPNRdm3oOQ1\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"SzGnjUSlCreBVRoB52KWv\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"#import \\\\\\\\\\\\\\\"GenerateTestUserSig.h\\\\\\\\\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"VPOSAgbP-v6K9RanoNBJx\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"RNJJyCoqCsK-FSfmWS6_O\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step2: 填写上一步骤中获取到的\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\" \\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\"SDKAppID,SDK 密钥\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"h7646S4nhf3n0HA600NgZ\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"[GenerateTestUserSig setSDKAPPID:xxxxxx];\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"onaQ0I7oS2CdWiMw7wwca\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"[GenerateTestUserSig setSECRETKEY:@\\\\\\\\\\\\\\\"xxxxxx\\\\\\\\\\\\\\\"];\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"QLCmWui6zeHQaIqYKz75_\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\u002F\\\\u002F Step3:根据 userID,生成 userSig\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"_8sczMuIeWdOOeUtVT_Vj\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"code-line\\\\\\\",\\\\\\\"id\\\\\\\":\\\\\\\"0N_d9rbxpelEFX6yl94IX\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"NSString *userSig = [GenerateTestUserSig genTestUserSig:@\\\\\\\\\\\\\\\"userID\\\\\\\\\\\\\\\"];\\\\\\\"}]}],\\\\\\\"autoWrap\\\\\\\":false}],\\\\\\\"id\\\\\\\":\\\\\\\"CvPJto8se9yBWOGiBWzD7\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"KezOtwYctyLNeV-b_W44A\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"控制台获取 UserSig\\\\\\\"}],\\\\\\\"nodeId\\\\\\\":\\\\\\\"console\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"h3\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"KatmiV9muixfn9yDi7ytD\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"登录\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"实时音视频控制台\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\",进入\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"开发辅助\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\" \\\\u003E \\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"OywFnAf6u21l8rVcFBli5\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"UserSig生成\u0026校验\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fconsole.cloud.tencent.com\\\\u002Ftrtc\\\\u002Fusersigtool\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fconsole.cloud.tencent.com\\\\u002Ftrtc\\\\u002Fusersigtool\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"start\\\\\\\":true},{\\\\\\\"id\\\\\\\":\\\\\\\"jSFLqYOigU67DTCXBtPcd\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"在签名(UserSig)生成工具下,选择对应的 SDKAppID 和 UserID。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"ZZoBAo4g-cYhd3xog2-wW\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"单击\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"生成签名(UserSig)\\\\\\\",\\\\\\\"b\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\",即可计算得到对应的 UserSig。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"uli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"tUZS3tKNGXKk-tozGot8b\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"color\\\\\\\":\\\\\\\"red\\\\\\\"},{\\\\\\\"type\\\\\\\":\\\\\\\"image\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fqcloudimg.tencent-cloud.cn\\\\u002Fimage\\\\u002Fdocument\\\\u002Febf02e0c558ffdd8a7d7d42b4b9d395c.png\\\\\\\",\\\\\\\"alt\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"inline\\\\\\\":true,\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"id\\\\\\\":\\\\\\\"WOLl5L29mgQB9vl9iqaPa\\\\\\\",\\\\\\\"naturalSize\\\\\\\":[2809,1448],\\\\\\\"size\\\\\\\":[974,502]},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"fAWJyg-X9KGDMk3fl8-nP\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"在正式运行阶段如何计算 UserSig?\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"h2\\\\\\\",\\\\\\\"nodeId\\\\\\\":\\\\\\\"formal\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"BGdIof-MDTveBOPcODfyf\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"业务正式运行阶段,TRTC 提供安全等级更高的服务端计算 UserSig 的方案,可以最大限度地保障计算 UserSig 用的密钥不被泄露,因为攻破一台服务器的难度要高于逆向一款 App。具体的实现流程如下:\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"nodeId\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"EZI2YKsGuaRBuh16mlgMT\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"q7anEju9VqNinOidZnvXd\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"image\\\\\\\",\\\\\\\"inline\\\\\\\":true,\\\\\\\"alt\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fqcloudimg.tencent-cloud.cn\\\\u002Fimage\\\\u002Fdocument\\\\u002Fa17b8daa131b6f740c1b831fa3536aaf.png\\\\\\\",\\\\\\\"naturalSize\\\\\\\":[930,592],\\\\\\\"size\\\\\\\":[960,611]},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"gcUadFoBdKqB--haLCvFj\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"您的 App 在调用 SDK 的初始化函数之前,首先要向您的服务器请求 UserSig。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"oli\\\\\\\",\\\\\\\"start\\\\\\\":true},{\\\\\\\"id\\\\\\\":\\\\\\\"BAk0dikQ4EVUuo7CyJDxH\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"您的服务器根据 SDKAppID 和 UserID 计算 UserSig,计算源码见文档前半部分。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"oli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"g9USRgRJaBiigajDM1EJX\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"服务器将计算好的 UserSig 返回给您的 App。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"oli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"J8OzKt-iQasHQ8Nej1215\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"您的 App 将获得的 UserSig 通过特定 API 传递给 SDK。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"oli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"Wou7-mSz9uSGdYoyonI0T\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"SDK 将 \\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"SDKAppID + UserID + UserSig\\\\\\\",\\\\\\\"code\\\\\\\":1},{\\\\\\\"text\\\\\\\":\\\\\\\" 提交给腾讯云服务器进行校验。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"oli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"-pvHptKLzjwgxvTmR3tRo\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"腾讯云校验 UserSig,确认合法性。\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"oli\\\\\\\",\\\\\\\"start\\\\\\\":false},{\\\\\\\"id\\\\\\\":\\\\\\\"Z0qnm5bWajUlAuoEPNQC5\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"oli\\\\\\\",\\\\\\\"start\\\\\\\":false,\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"校验通过后,会向 TRTCSDK 提供实时音视频服务。\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"sz_kCKmamFsyHINwItVkc\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"vfmvRwrRDoQfcYFunqhqx\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"为了简化您的实现过程,我们提供了多个语言版本的 UserSig 计算源代码及其示例:\\\\\\\"}]},{\\\\\\\"id\\\\\\\":\\\\\\\"Bqrq45G-1tBNEoQZpjMbo\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"Y9-x4TwvIizukjsWvmuiH\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"t3iMY79WiD3chZa-sYGbO\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"O8FLhxeVvjwdavze1VimN\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"语言版本\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"N26SC23N9frE-jwWkJjzk\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"uOiEs4hPI1eN-s_w4e2dG\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"签名算法\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"ekH05miMSVZwF8uc079oR\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"DmmTth-WYmH4O7wZiqvUd\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"源代码\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"t2D4DheUuKGL4YiwHxH0H\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"QEDi-rqAZGA3XB9wsNvL2\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"使用示例\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"SOYjki5MIg1z8ARU3SUEw\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"GEyC7PE2z9wVyxwQcqv5Q\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"UTLUSlIM-guKXlN4NmfpQ\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"-n4JUm54sfMZAJ8rVcKjy\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Java\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"91k3m57tSSNgiLz4dXhEN\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"t8bHMAFUYRbSeiEdNp_U1\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"mKouP2IVEw8niHQamgdWP\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"HMAC-SHA256\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"XyPZCWuXjwdmvFnN4tQPL\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"a4RbZ6-WIMw8NyQhJbrkk\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"L_O-jvGjgixzoaz_rKxz7\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"S0zadSxhdAKvCqiqLF1pt\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"genSig\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-java\\\\u002Fblob\\\\u002Fmaster\\\\u002Fsrc\\\\u002Fmain\\\\u002Fjava\\\\u002Fcom\\\\u002Ftencentyun\\\\u002FTLSSigAPIv2.java\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-java\\\\u002Fblob\\\\u002Fmaster\\\\u002Fsrc\\\\u002Fmain\\\\u002Fjava\\\\u002Fcom\\\\u002Ftencentyun\\\\u002FTLSSigAPIv2.java\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"7y5fWtCsqkHyi6mxsBuIL\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"El7ZAOZVUiiXpy_uokDnw\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"BDlol6CoLGLrZhDpWetum\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-java\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-java\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"},{\\\\\\\"text\\\\\\\":\\\\\\\"\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"glNW6BnjoLZh4VgMMGq1G\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"fISAe7heAq8TabQxpEC2b\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"_gPXnhXqzG-oIYjwcSPd4\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"X6KF7tTIaMhlugFwOj6Qy\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"GO\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"d0gNFk1Fr3XyGYHMTltBZ\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"8hssf56K9dWFYAD912vlN\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"d2bwhit4amfEFsWO4YD5d\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"HMAC-SHA256\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"Si7Bun_-0lwAeKf_-glD3\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"M9Fc_8ZEpxH1GIq8meJOb\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"t5VPkYAOm2jh_cL480fFm\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"AJBOmQw79G5HfVw52ohcP\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"GenSig\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-golang\\\\u002Fblob\\\\u002Fmaster\\\\u002Ftencentyun\\\\u002FTLSSigAPI.go\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-golang\\\\u002Fblob\\\\u002Fmaster\\\\u002Ftencentyun\\\\u002FTLSSigAPI.go\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"wOtjFHMLmEIm1C2dnvUnN\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"BimKugMd9cgVFqu4GntLB\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"tsg1AkjYvrt3n2TSMqb6x\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"-8m5OZecVYgpJ9bfADk88\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-golang\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-golang\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"o4xTmxeyIMVWrNZTe7oIo\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"bFR0GdRF8zR_AF9sqawvy\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"iPog-TJkY6OQF5PHtUDTS\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"yNyDfUfYQarQjyaGm5Y_r\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"PHP\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"kD3SVHemTvfsMYgZ9HW-_\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"BSj6mWoDRFBvWXcygOeas\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"islx-ldrfDyU62iOW87uq\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"HMAC-SHA256\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"0jXeB4yRaaUwYydgQxuPM\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"AEul_byVOfW9wxYiKgx3p\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"dS7dystliuDClED0KTrgO\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"651Cp6HOF_HFnRZStiJNr\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"genSig\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-php\\\\u002Fblob\\\\u002Fmaster\\\\u002Fsrc\\\\u002FTLSSigAPIv2.php\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-php\\\\u002Fblob\\\\u002Fmaster\\\\u002Fsrc\\\\u002FTLSSigAPIv2.php\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"XvqLiCn6bCG3PXTXeF8QF\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"XtupNVWr96eKLUgUcZaFz\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"oHyGivHQMFSoGfsdrmawb\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"PEi2bdVyDWOSwuuiLXuXd\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-php\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-php\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"FaTEMFQHb3NfZMd-qZb6y\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"DhEtMvVF43XHhBOALNo8q\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"Zcnv0CYOCOkVs8JEPp5Ml\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"Mz6za8BeIrSoHafkXINFT\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Node.js\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"9TNIDE4TN-VpTi6VDC8Gj\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"gXK_hC59JhIzR6NHKKnS6\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"8HLjvelyA_V55RDaO9fa1\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"HMAC-SHA256\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"GboGlWdv9ZKyPy0pLQiha\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"uoOiLpa-zVGjuHi3kgIuo\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"CUa2uHO6iRM6GkWnfb2j_\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"yTh7PK-5exi8UTKxEi8Cv\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"genSig\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-node\\\\u002Fblob\\\\u002Fmaster\\\\u002FTLSSigAPIv2.js\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-node\\\\u002Fblob\\\\u002Fmaster\\\\u002FTLSSigAPIv2.js\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"9zXouyG8k949gdPwsp--z\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"096x39BS4PqKYUCfzv2Ih\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"ypeQDC7TqsSlljkDgGF5y\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"y1KRVjaU5lY4WITtn6nQN\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-node\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-node\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"MBRfytsSCjG3CNoKQXVQ4\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"gWPx3vBVUe6xeVPKhOnkZ\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"s2POaKMVTWJz3vqEW3G3i\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"O-Dyvn8XF_6vRFVV5Ezpb\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Python\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"-rew8l-nTs0owNZeiYqgB\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"9qyk0WqRUlgTaNvQpW9Sk\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"6jNjRRyPhkpLIIi4QjQUp\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"HMAC-SHA256\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"UMBb09APDwfngFRcmwB5h\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"iLwHJGr3Hn8YMNm1GguDS\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"r0oEw8bHGIb0AYy67THXt\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"_aAdyx13AEImwO5b6bx70\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"genSig\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-python\\\\u002Fblob\\\\u002Fmaster\\\\u002FTLSSigAPIv2.py\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-python\\\\u002Fblob\\\\u002Fmaster\\\\u002FTLSSigAPIv2.py\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"8gsuwON35BvY6KT2hrahW\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"aQbuBHRHHkjd6KDrSTWvr\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"4HcwORf2MO9YTlf18S_ev\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"I9EbRyo7LH1w9ii4fKdnD\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-python\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-python\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"DCL8nknqWbOXx8Won8d0b\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"k8yt9tY1tr49BgIHUs4og\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"EhMpJXL9cCKuGrMPUNZlz\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"29nktxdjA-ZSw-ipV6HCH\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"C#\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"YSblQT1blA82mCG8UK8XU\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"N_KBITa6UsB_gZ0cZ2e5y\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"jMptpRaqY2b5PmlgipAz1\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"HMAC-SHA256\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"PWeQawruW1FPOCv-QsJXp\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"q1k-DT3JBtPsEnRMj4U3l\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"r_bQAAF76CI_1nvNJsbGU\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"I7MpLt7eJDOpJu6U_gu2C\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"GenSig\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-cs\\\\u002Fblob\\\\u002Fmaster\\\\u002Ftls-sig-api-v2-cs\\\\u002FTLSSigAPIv2.cs\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-cs\\\\u002Fblob\\\\u002Fmaster\\\\u002Ftls-sig-api-v2-cs\\\\u002FTLSSigAPIv2.cs\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"},{\\\\\\\"id\\\\\\\":\\\\\\\"v4BHLO_h8TpYoee_WunVg\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"0W1qU6bP8p1J88GYCzWbr\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"oizH6fnv6v1absRzSKmDF\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"id\\\\\\\":\\\\\\\"89j66vEMMpI7EH2VDCu__\\\\\\\",\\\\\\\"children\\\\\\\":[{\\\\\\\"text\\\\\\\":\\\\\\\"Github\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"ref\\\\\\\",\\\\\\\"props\\\\\\\":{\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"url\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-cs\\\\\\\"},\\\\\\\"linkTitle\\\\\\\":\\\\\\\"https:\\\\u002F\\\\u002Fgithub.com\\\\u002Ftencentyun\\\\u002Ftls-sig-api-v2-cs\\\\\\\",\\\\\\\"linkTarget\\\\\\\":\\\\\\\"blank\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"p\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"cell\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"row\\\\\\\"}],\\\\\\\"type\\\\\\\":\\\\\\\"table\\\\\\\",\\\\\\\"rowHeader\\\\\\\":true,\\\\\\\"columnHeader\\\\\\\":false,\\\\\\\"widths\\\\\\\":[218,278,218,218]}]\\\"\",\"sdkPath\":\"//qcloudimg.tencent-cloud.cn/static/document/tea-slate-sdk.v0.1.16-fix-v5\"},\"relationConfig\":{\"switch\":0},\"shareConfig\":{\"title\":\"\"},\"advanced\":{\"styles\":\"\"}},\"relatedHotArticleList\":[]},\"staticContext\":{\"isMobile\":false,\"isMiniProgram\":false,\"isWechat\":false,\"isPreview\":false,\"originalUrl\":\"/document/product/647/17275\",\"CDN_DOMAIN\":\"cloudcache.tencent-cloud.com\",\"QCLOUD_DOMAIN\":\"cloud.tencent.com\",\"isLegalReferer\":true,\"ssrInfo\":{},\"language\":\"zh\",\"requestId\":\"CE6sSl2UB\"}},\"0-0\":null},\"actionData\":null,\"errors\":null}");</script></div><script>window.isServerContext = false; window.isClientContext = true; window.$serverTime = 1732981466525; window.$clientTime = 1732981466525;</script><script> window.CDN_DOMAIN = 'cloudcache.tencent-cloud.com'; window.QCLOUD_DOMAIN = 'cloud.tencent.com'; window.language = 'zh'; </script><script src="//cloudcache.tencent-cloud.com/qcloud/developer/scripts/release/libs/dom4/1.8.3/dom4.js"></script><script src="//cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/vendors/raf/raf.js"></script><script>if (window.raf) window.raf.polyfill()</script><script src="//cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/libs/jsencrypt-standalone.min.js"></script><script src="https://cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/vendors/babel/polyfill.6.26.min.js"></script><script src="https://cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/vendors/react/react.16.8.6.min.js"></script><script src="https://cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/vendors/react/react-dom.16.8.6.min.js"></script><script src="https://cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/vendors/jquery-3.2.1.min.js"></script><div> <script> window.__QCPortalContext__ = { version: "0.4.0", resource: {}, $getCurrServerTime: (function(s, c) {return function(){return +new Date()+s-c;}})(1732981466525, +new Date()), } </script> <script src="https://cloudcache.tencent-cloud.com/qcloud/portal/kit/full.c9aa1f7ce.js"></script> <script> if (window.QCPortalKit) { window.QCPortalKit.init({"topNav":{"fixed":true},"footer":{"mobileOnly":true},"floatBar":{"disable":true},"version":"v2","site":{"replaceUrlTLDScope":"page"}}) } </script> </div><script src="//cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/login/api.js"></script><script src="//cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/vendors/clipboard.min.js"></script><script src="//cloudcache.tencent-cloud.com/qcloud/main/components/document-feedback/document-feedback.1067f5e58e.js"></script><script src="https://cloudcache.tencent-cloud.com/qcloud/doc/scripts/document/app.4550c09c.js"></script><script src="https://cloudcache.tencent-cloud.com/qcloud/main/scripts/release/common/deps/wechatJsSdk.js?version=1_0_1&max_age=31536000"></script><script>window.$render();</script><script src="//dscache.tencent-cloud.cn/ecache/qcstat/qcloud/qcloudStatApi.js" async=""></script></body></html>