產品介紹
什么是數環通
基礎概念講解
應用場景
多渠道數據融合
業務、財務、辦公自動化
產業鏈應用與數據集成
工業應用與設備互聯
智慧園區與未來社區
快速入門
創建LinkUp
應用授權
判斷用法
監控用法
分支用法
列表逐條處理
變量與表達式
流程管理
項目管理
流程創建
編輯器操作
單步測試與預覽
試運行
發布與版本管理
錯誤步驟重試
數據同步
JSON Path 使用
輸出處理
數據編排
1、功能使用手冊
2、腳本使用手冊
1 、簡單查詢
2、謂詞查詢
3、函數與表達式
4、構建結構結果
5、查詢組合
6、排序、分組和聚合
7、處理模型
8、函數式編程
9、正則表達式
10、日期、時間處理
11、路徑運算符
12、數字運算符
13、比較運算符
14、布爾運算符
15、其他運算符
16、字符串函數
17、數值函數
18、 數字聚合函數
19、布爾函數
20、數組函數
21、對象函數
22、日期/時間函數
23、高階函數
運行日志
運行記錄
開發工具
連接器工具
連接器源碼配置
控件類型配置
腳本配置說明
內置函數
應用講解
內置應用
瀏覽器插件
數據表
文本字符串
日期
數據篩選
數據處理
延時處理
數學計算器
定時觸發器
子流程調用
手動觸發器
物流地址解析
腳本執行器
自定義變量
文件讀取
Webhook
SMTP發送郵件
文件傳輸
JSON工具
網絡工具
消息處理
PDF水印工具
文件存儲
API服務
Http請求
循環控制
EDI 自定義標準數據轉換
對象類型判斷
瀏覽器操作
三方應用
簡道云
金山數據表
抖音
釘釘(自建應用)
語雀
金山表單
微信公眾號
企業微信群機器人
聚水潭
企業微信三方授權
MySQL
SqlServer
ChatGpt
快手
金山輕維表
抖店
維格表
巨量千川
飛書多維表
釘釘機器人
飛書(自建)
釘釘
百度網盤
QQ郵箱
金山工作表
易知微DTable
MQTT
Doirs
中通快遞
韻達速遞
企業微信(代開發)
知乎效果營銷平臺
飛書云文檔
騰訊企業郵箱
API管理
API管理概述
數據概覽
API服務
訪問憑證
API門戶
API安全密鑰簽名
API監控預警
擴展工具
代理網關
消息處理
管理中心
企業管理
操作日志
成員管理
開放平臺
開放平臺簡介
接入教程
常見問題
數環通ip白名單
最佳實踐
彥祖文化 |通過數環通實現全渠道數據融合打通
新石器|通過數環通實現跨系統、跨部門高效協同
幫助首頁
API管理
API安全密鑰簽名
API安全密鑰簽名
訪問終端中的授權方式設置為 “安全密鑰”,調用 API 則需要攜帶簽名;服務端會根據請求參數,對簽名進行驗證,簽名不合法的請求將會被拒絕。(目前僅支持的簽名算法為 sha256) 下面以 Java 為例,詳細解析一下簽名算法: (1)計算簽名 * 拼接請求參數 以 method、apiPath、ceAccessKey、ceAccessSecret、timestamp 這個順序,把以上參數的鍵值對依次拼接在一起,中間用分隔符 “;” 隔開 示例: ``` method=GET;apiPath=/trigger/apimanage/thsshy/qq;ceAccessKey=5c821faca6ef49d4a845a6fa7066125c;ceAccessSecret=a33a824953944c8baed35386a3700aaf;timestamp=1651218530319 ``` (其中 “ceAccessKey”、“ceAccessSecret” 在創建訪問終端時獲取)  簽名參數: | 參數名稱 | 參數類型 | 是否必須 | 示例值 | 參數描述 | | ---------------- | ---------- | ---------- | ----------------------------------------------------------------------- | ------------------------------------------------------ | | method | string | 是 | GET | 請求方法 | | apiPath | string | 是 | /trigger/apimanage/15ddbd3bb0da4584855356a7cec3a36b/instance/getOrder | 用于調用 API 的請求路徑(不包含 host 路徑) | | ceAccessKey | string | 是 | 4f844a8e0f77439cbe6b345a8724b7d9 | 用于調用 API 的 accessKey | | ceAccessSecret | string | 是 | 58ec6f3f05484c7bb22ee5cbc9ce1331 | 用于調用 API 的 accessSecret | | timestamp | long | 是 | 1651218530319 | 時間戳,格式為 ms,和服務器時間相差超過 5 分鐘會報錯 | * 使用 sha256 算法,計算簽名串 ``` $sign = SHA256("sha256", $signPattern); ``` (2)將簽名放置到 Params 中 * ceAccessKey * sign (訪問終端授權方式為“APP token”時需要) * timestamp ******以上三個為系統參數請勿混用******  簽名算法代碼 ```java /** * 驗簽 * * @param inputParams */ public static String getSign(Map<String, Object> inputParams) { String calculateSign = null; String signPattern = null; StringBuffer paramJoin = new StringBuffer(); inputParams.forEach((key, value) -> paramJoin.append(key).append("=").append(value).append(";")); signPattern = paramJoin.toString(); if (signPattern.endsWith(";")) { signPattern = signPattern.substring(0, signPattern.length() - 1); } calculateSign = SignMethodEnum.calculateSign(SignMethodEnum.SHA256, signPattern); return calculateSign; } /** * 傳入文本內容,返回 SHA-256 串 * * @param strText * @return */ public static String SHA256(final String strText) { return SHA(strText, "SHA-256"); } /** * 字符串 SHA 加密 * * @param strText * @return */ private static String SHA(final String strText, final String strType) { // 返回值 String strResult = null; // 是否是有效字符串 if (strText != null && strText.length() > 0) { try { // SHA 加密開始 // 創建加密對象 并傳入加密類型 MessageDigest messageDigest = MessageDigest.getInstance(strType); // 傳入要加密的字符串 messageDigest.update(strText.getBytes()); // 得到 byte 類型結果 byte byteBuffer[] = messageDigest.digest(); // 將 byte 轉換為 string StringBuffer strHexString = new StringBuffer(); // 遍歷 byte buffer for (int i = 0; i < byteBuffer.length; i++) { String hex = Integer.toHexString(0xff & byteBuffer[i]); if (hex.length() == 1) { strHexString.append('0'); } strHexString.append(hex); } // 得到返回結果 strResult = strHexString.toString(); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } } return strResult; } ``` #### 2.2.6 拼裝 HTTP 請求 > 發起 HTTP 請求 > 獲得 HTTP 響應 ### (postman 請求)示例:  #### 查詢參數(QueryParams): | 名稱 | 類型 | 是否必填 | 描述 | | -------------- | -------- | ---------- | ---------------------------------------------------------------- | | ceAccessKey | string | 是 | 系統參數:用于調用 API 的憑證 | | sign | string | 否 | 系統參數:簽名參數 | | timestamp | long | 是 | 系統參數:時間戳,格式為 ms,和服務器時間相差超過 5 分鐘會報錯 | | (自定義參數) | | 否 | 在 API 服務中自定義的查詢參數 | #### 請求體參數(BodyParams): | 名稱 | 類型 | 是否必填 | 描述 | | ---------------- | ------ | ---------- | ------ | | (自定義參數) | | 否 | | #### 頭部參數(HeaderParams): | 名稱 | 類型 | 是否必填 | 描述 | | -------------- | ------ | ---------- | ------ | | (自定義參數) | | 否 | | ### #### 請求示例(HTTP): ``` GET /trigger/apimanage/15ddbd3bb0da4584855356a7cec3a36b/qwer/rrrr?ww=string1&ceAccessKey=48ebc58065f84b6e929d27510a126559&sign=e45eebe688ebcf187de3c3a9624b5270f121c7ecee146590d7559a0fc8a6ce9b×tamp=1681524781000 HTTP/1.1 Host: api.solinkup.net qq: string2 Content-Type: application/json Cookie: SERVERCORSID=ade7aa04d0135f0dac8f7bc18d8fca99|1681699042|1681699042; SERVERID=ade7aa04d0135f0dac8f7bc18d8fca99|1681699042|1681699042 Content-Length: 16 {"ee":"string3"} ``` #### 返回示例: ``` { "result": "qwer,qwer,sadsad" } ```
上一篇
API門戶
下一篇
API監控預警
手機掃碼
復制鏈接
手機掃一掃轉發分享
復制鏈接
Markdown文件
分享
鏈接
類型
密碼
更新密碼
主站蜘蛛池模板:
成人午夜精品一区二区三区
|
国产经典久久
|
日韩精品视频在线观看免费
|
日韩欧美不卡视频
|
噜噜噜网站
|
成年人免费在线看惊悚片
|
亚洲免费中文字幕
|
午夜家庭影院
|
在线播放国产一区
|
韩国电影一区
|
国产毛片久久久久久国产毛片
|
国产日本欧美在线
|
免费在线观看成年人视频
|
日韩国产欧美一区
|
国产小视频免费观看
|
马与人黄色毛片免费视频
|
第一毛片
|
在线国产日韩
|
国产黄色高清视频
|
亚洲精品视频一区二区三区
|
99视频精品3线视频在线观看
|
欧美激情免费在线观看
|
黄色软件哪里下载
|
欧美色图第一页
|
中文字幕的电影免费网站
|
国产成人高潮免费观看精品
|
日韩精品成人在线
|
aaa日韩
|
日韩无
|
国产婷婷色一区二区三区
|
欧美一级在线免费观看
|
黄色片一级片
|
天天狠天天干
|
草碰在线视频
|
精品一区二区三区四
|
插入综合网
|
视频一区二区中文字幕
|
99视频在线免费观看
|
99久视频
|
日韩一级精品视频在线观看
|
国产在线观看一区二区
|