<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ### 準備工作 提升開發測試效率,建議使用ApiPost客戶端工具做接口測試[https://www.apipost.cn/download.html](https://www.apipost.cn/download.html) ![](https://doc.wmj.com.cn/server/index.php?s=/api/attachment/visitFile/sign/4e5004d0bcd0b99167f86edb72022297&showdoc=.jpg) 我們做了一個案例:[https://docs.apipost.cn/view/fcc3661972b26267](https://docs.apipost.cn/view/fcc3661972b26267) **接口簡要描述:** * 簡要使用說明 ![](https://doc.wmj.com.cn/Public/Uploads/2020-08-09/5f2ecc04232ba.png) **接口地址:** * `https://www.wmj.com.cn/api/` **請求方式:** * GET/POST 獲取appid和appsecret地址:[https://www.wmj.com.cn/open](https://www.wmj.com.cn/open) ![](https://doc.wmj.com.cn/Public/Uploads/2020-08-08/5f2eaefc37999.png) ![](https://doc.wmj.com.cn/Public/Uploads/2020-08-08/5f2eaf20a962c.png) 用微信掃碼或郵箱注冊登錄后取得appid和appsecret ![](https://doc.wmj.com.cn/Public/Uploads/2020-08-08/5f2eb07c3c860.png) * `AES加密秘鑰一般不需要,請留空。` ### 二、接口詳情 #### 1.注冊設備方式一(推薦使用) **請求URL:** * `https://www.wmj.com.cn/api/reglock` **請求方式:** * POST * 設備只需注冊一次,不需要重復注冊。 **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 微門禁開放平臺申請的appid | | appsecret | 是 | string | 微門禁開放平臺申請的appsecret | | sn | 是 | string | 設備序列號 | **返回示例:注冊成功** ~~~ { "state": 1, "state_code": 1, "lock_type": 1, "lock_status": null, "state_msg": "注冊成功"} ~~~ **返回示例:設備已存在** ~~~ { "state": 0, "state_code": 1004, "state_msg": "設備已存在,請勿重復添加"} ~~~ **返回示例:設備未激活** ~~~ { "state": 0, "state_code": 1001, "state_msg": "未激活設備,請聯系管理員"} ~~~ #### 2.注冊設備方式二(早期程序使用,兼容性保留) **請求URL:** * `https://www.wmj.com.cn/api/postlock?appid=wmj_6bd1gtYMZn&appsecret=VIGBwl2dwD0pST2dIMm8MZOeVX3KlT` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | sn | 是 | string | 設備序列號,直接放入序列號到body,appid和appsecret放到url | **返回示例** ~~~ { "state": 1, "state_code": 1, "lock_type": 1, "lock_status": null, "sim": { "iccid": null, "endtime": false }, "state_msg": "添加成功"} ~~~ #### 3.開門方式一(推薦使用) **請求URL:** * `https://www.wmj.com.cn/api/oplock` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 無 | | appsecret | 是 | string | 無 | | sn | 是 | string | 無 | **返回示例:開門成功** ~~~ { "state": 1, "state_code": 1, "status_code": "1", "lock_type": "1", "lock_status": "1", "state_msg": "成功"} ~~~ **返回示例:開門失敗** ~~~ { "state": 0, "state_code": 0, "status_code": "1", "lock_type": "1", "lock_status": "1", "state_msg": "失敗,網絡故障"} ~~~ #### 4.開門方式二(早期程序使用,兼容性保留) **請求URL:** * `https://www.wmj.com.cn/api/openlock?appid=wmj_6bd1gMZBn&appsecret=VIGBwIvl2dwD0pST2dIMm8MZOe3KlT` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | sn | 是 | string | 設備序列號,參數名不用,直接將設備序列號放入body提交 | **返回示例:開門成功** ~~~ { "state": 1, "state_code": 1, "status_code": "1", "lock_type": "1", "lock_status": "1", "state_msg": "成功"} ~~~ **返回示例:開門失敗** ~~~ { "state": 0, "state_code": 0, "status_code": "1", "lock_type": "1", "lock_status": "1", "state_msg": "失敗,網絡故障"} ~~~ #### 5.查詢鎖狀態 方式一(推薦使用) **請求URL:** * `https://www.wmj.com.cn/api/lockstatus` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 無 | | appsecret | 是 | string | 無 | | sn | 是 | string | 無 | **返回示例:設備在線** ~~~ { "state": 1, "state_code": 1, "state_msg": "獲取成功", "online": 1,1表示設備在線,0表示設備離線 "ista": null,1表示檢測到有人,0表示檢測到無人,null為設備不支持該功能 "lockstatus": null,1表示門打開狀態,0表示門關閉狀態,null為設備不支持該功能 "opentime": null,門開打的時間 "closetime": null,門關閉的時間} ~~~ **返回示例:設備離線** ~~~ { "state": 1, "state_code": 1, "state_msg": "獲取成功", "online": 0,1表示設備在線,0表示設備離線 "ista": null,1表示檢測到有人,0表示檢測到無人,null為設備不支持該功能 "lockstatus": null,1表示門打開狀態,0表示門關閉狀態,null為設備不支持該功能 "opentime": null,門開打的時間 "closetime": null,門關閉的時間} ~~~ #### 6.查詢鎖狀態 方式二(早期程序使用,兼容性保留) **請求URL:** * `https://www.wmj.com.cn/api/lockstate?appid=wmj_6bd1YMZBn&appsecret=VIGBwIvl2dwD0pdIMm8MZOeVX3KlT` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | sn | 是 | string | 無 | **返回示例** ~~~ { "state": 1, "state_code": 1, "state_msg": "獲取成功", "status_msg": "1", "online": 1,1表示設備在線,0表示設備離線 "ista": null,1表示檢測到有人,0表示檢測到無人,null為設備不支持該功能 "lockstatus": null,1表示門打開狀態,0表示門關閉狀態,null為設備不支持該功能 "opentime": null,門開打的時間 "closetime": null,門關閉的時間 "data": { "online": 1,1表示設備在線,0表示設備離線 }} ~~~ #### 7.刪除注冊 方式一(推薦使用) **請求URL:** * `https://www.wmj.com.cn/api/delreglock` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 無 | | appsecret | 是 | string | 無 | | sn | 是 | string | 無 | **返回示例:刪除成功** ~~~ { "state": 1, "state_code": 1, "state_msg": "刪除成功"} ~~~ **返回示例:無權限操作** ~~~ { "state": 0, "state_code": 4005, "state_msg": "無權限操作"} ~~~ #### 8.刪除注冊 方式二(早期程序使用,兼容性保留) **請求URL:** * `https://www.wmj.com.cn/api/dellock?appid=wmj_6d1tYMZB&appsecret=VIGBwIvl2dwD0pST28MZOeVX3KlT` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | sn | 是 | string | 無 | **返回示例:刪除成功** ~~~ { "state": 1, "state_code": 1, "state_msg": "刪除成功"} ~~~ **返回示例:無權限操作** ~~~ { "state": 0, "state_code": 4005, "state_msg": "無權限操作"} ~~~ #### 9.開關(常通常斷)設備控制接口 **請求URL:** * `https://api.wmj.com.cn/api/handle` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 無 | | appsecret | 是 | string | 無 | | content | 是 | string | 無 | content {“sn”:”WMJ17100011”,”status”:2} **返回示例** ~~~ { "state": 1, "state_code": 1, "status_code": "3", "lock_type": "2",// 2為接通,3為斷開 "lock_status": "3", "state_msg": "成功"} ~~~ #### 10.支持刷IC卡設備添加卡接口 **請求URL:** * `https://www.wmj.com.cn/api/addcard` **請求方式:** * POST **適用于:** * 序列號開始為WMJ62設備 **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 無 | | appsecret | 是 | string | 無 | | sn | 是 | string | 設備序列號 | | cardsn | 是 | string | IC卡卡號 | | endtime | 是 | int | 有效期,時間戳 | **返回示例** ~~~ { "state": 1, "state_code": 200, "state_msg": "添加成功"}{ "state": 1, "state_code": 201, "state_msg": "更新成功"} ~~~ #### 11.從設備讀取IC卡 **請求URL:** * `https://www.wmj.com.cn/api/readcard` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 微門禁appid | | appsecret | 是 | string | 微門禁appsecret | | sn | 是 | string | 序列號 | **返回示例** ~~~ { "state": 1, "state_code": 200, "state_msg": "讀卡成功", "data": [ { "carduid": "C0A825CC", "endtime": "1628759478", "dateline": "1597223479" }, { "carduid": "406B0CCC", "endtime": "1628759480", "dateline": "1597223480" }, { "carduid": "109810CC", "endtime": "1628759482", "dateline": "1597223482" } ]} ~~~ #### 12.按appid獲取帳號下所有刷卡設備開門記錄 **請求URL:** * `https://www.wmj.com.cn/api/getcardlog` **請求方式:** * POST **說明:** * 避免數據重復和冗余,本接口數據只能獲取1次 **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | appid | | appsecret | 是 | string | appsecret | ~~~ { "state": 1, "state_code": 200, "state_msg": "獲取成功", "data": [ { "id": "20467793", "locksn": "WMJ62593198", "cardsn": "8CEB180E", "dateline": "1605887198" }, { "id": "20467806", "locksn": "WMJ62593198", "cardsn": "4CA3150F", "dateline": "1605887248" } ]} ~~~ ~~~ { "state": 1, "state_code": 201, "state_msg": "無數據"} ~~~ #### 12.按設備序列號獲取刷卡開門記錄 **請求URL:** * `https://www.wmj.com.cn/api/getcardopenlog` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | appid | | appsecret | 是 | string | appsecret | | sn | 是 | string | 序列號 | **返回示例** ~~~ { "state": 1, "state_code": 200, "state_msg": "獲取成功", "data": [ { "id": "15578962", "cardsn": "109810CC", "dateline": "1597633752" }, { "id": "15578951", "cardsn": "109810CC", "dateline": "1597633741" }, { "id": "15578947", "cardsn": "109810CC", "dateline": "1597633733" }, { "id": "15578945", "cardsn": "109810CC", "dateline": "1597633730" }, { "id": "15638697", "cardsn": "109810CC", "dateline": "1597724171" }, { "id": "15638692", "cardsn": "406B0CCC", "dateline": "1597724168" }, { "id": "15638688", "cardsn": "406B0CCC", "dateline": "1597724165" }, { "id": "15638686", "cardsn": "406B0CCC", "dateline": "1597724164" }, { "id": "15635482", "cardsn": "109810CC", "dateline": "1597719855" }, { "id": "15635451", "cardsn": "109810CC", "dateline": "1597719792" }, { "id": "15635438", "cardsn": "109810CC", "dateline": "1597719775" }, { "id": "15690444", "cardsn": "109810CC", "dateline": "1597814632" }, { "id": "15593365", "cardsn": "109810CC", "dateline": "1597652803" }, { "id": "15596175", "cardsn": "406B0CCC", "dateline": "1597655964" }, { "id": "15596180", "cardsn": "109810CC", "dateline": "1597655965" }, { "id": "15596182", "cardsn": "C0A825CC", "dateline": "1597655968" }, { "id": "15693549", "cardsn": "109810CC", "dateline": "1597818810" } ]} ~~~ #### 13.支持刷IC卡設備刪除卡接口 **請求URL:** * `https://www.wmj.com.cn/api/delcard` **請求方式:** * GET **適用于:** * 序列號開始為WMJ62設備 **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 無 | | appsecret | 是 | string | 無 | | sn | 是 | string | 設備序列號 | | cardsn | 是 | string | IC卡卡號 | **返回示例** ~~~ { "state": 1, "state_code": 200, "state_msg": "刪除成功"} ~~~ #### 14.配置云語音接口 **請求URL:** * `https://www.wmj.com.cn/api/audioconfig` **請求方式:** * POST **適用于:** * 序列號開始為WMJ62設備 **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 微門禁appid | | appsecret | 是 | string | 微門禁appsecret | | sn | 是 | string | 設備序列號 | | openttscontent | 是 | string | 開門提示語音內容,最大60字 | | volume | 是 | int | 音量大小,1-7 | **返回示例** ~~~ { "state": 1, "state_code": 201, "state_msg": "更新成功"} ~~~ #### 15.配置顯示屏參數 **請求URL:** * `https://www.wmj.com.cn/api/lcdconfig` **請求方式:** * POST **適用于:** * 序列號開始為WMJ62,帶顯示屏設備 **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 微門禁appid | | appsecret | 是 | string | 微門禁appsecret | | sn | 是 | string | 設備序列號 | | qrcodeurl | 是 | string | 如:[https://wxapp.wmj.com.cn/minilock?user\_id=1&lock\_id=166&wstate=](https://wxapp.wmj.com.cn/minilock?user_id=1&lock_id=166&wstate=) | * #### 最后這個&wstate=必須加上 **返回示例** ~~~ { "state": 1, "state_code": 200, "state_msg": "配置成功"} ~~~ #### 16.控制設備進出發卡模式 **請求URL:** * `https://www.wmj.com.cn/api/devaddcard` **請求方式:** * POST **參數:** | 參數名 | 必選 | 類型 | 說明 | | --- | --- | --- | --- | | appid | 是 | string | 微門禁appid | | appsecret | 是 | string | 微門禁appsecret | | sn | 是 | string | 設備序列號 | | addcardmode | 是 | int | 1設備進入發卡模式,2設備退出發卡模式 | **返回示例** ~~~ { "state": 1, "state_code": 200, "state_msg": "設置成功"} ~~~ ### 三、案例代碼 **PHP案例代碼及說明(使用接口方式一,推薦使用)** ~~~ <?phpheader("Content-type: text/html; charset=utf-8");$para['sn'] = 'WMJ19900007'; //鎖的序列號,這個序列號貼在每個模塊的標簽上。/* * DEMO -- 提交模塊到系統注冊,注意:所有關于設備的操作,都需要先注冊設備到系統才可以操作,只需注冊一次 */$opresult = wmjHandle('reglock',$para);print_r($opresult);//輸出注冊信息/*提交模塊到系統注冊 返回碼說明state:1:成功0:失敗state_code:1:添加成功0:添加失敗1001:參數錯誤或賬戶被禁用1002:沒有上傳設備序列號(加密和不加密不統一也有會導致這個錯誤)1003:設備序列號錯誤1004:設備已存在,請勿重復注冊(嚴格權限控制,設備只能在系統中存在一次,如通過其他方式添加了設備,請先刪除注冊)*//* * DEMO -- 開門接口 */$opresult = wmjHandle('oplock',$para);print_r($opresult);//輸出開門結果/*開門接口 返回碼說明state:1:成功0:失敗state_code:1:開門成功0:開門失敗2001:參數錯誤或賬戶被禁用2002:沒有上傳設備序列號(加密和不加密不統一也有會導致這個錯誤)2003:設備序列號錯誤2004:設備不存在2005:無權限操作(出現這個錯誤是因為設備不是通過此appid添加的)2006:連接服務器出錯,請重試(此服務器是模塊操作服務器)*//* * DEMO -- 刪除注冊接口 *///$opresult = wmjHandle('delreglock',$para);//print_r($opresult);//輸出刪除結果/*刪除模塊接口 返回碼說明state:1:成功0:失敗state_code:1:刪除成功0:刪除失敗4001:參數錯誤或賬戶被禁用4002:沒有上傳設備序列號(加密和不加密不統一也有會導致這個錯誤)4003:設備序列號錯誤4004:設備不存在4005:無權限操作(出現這個錯誤是因為設備不是通過此appid添加的)*//* * DEMO -- 查詢模塊在線狀態 */$opresult = wmjHandle('lockstatus',$para);print_r($opresult);//輸出刪除結果/*查詢模塊在線狀態 返回碼說明state:1:成功0:失敗state_code:1:查詢成功0:查詢失敗5001:參數錯誤或賬戶被禁用5002:沒有上傳設備序列號(加密和不加密不統一也有會導致這個錯誤)5003:設備序列號錯誤5004:設備不存在online1:在線0:不在線*//* *DEMO -- wmjHandle函數 */function wmjHandle($type, $para){ $data=$para; $data['appid']='wmj_sP3ucguIBQU'; $data['appsecret']='aOzP1QddgBC04KkLr2eOlujrD9VUDJTP'; $url = 'https://www.wmj.com.cn/api/'.$type.'.html'; $result = wmjHttpPost($url, http_build_query($data)); return $result;}/* *DEMO -- wmjHttpPost函數 */function wmjHttpPost($url, $data) { $curl = curl_init(); curl_setopt($curl, CURLOPT_TIMEOUT, 30); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Content-Type: application/x-www-form-urlencoded', 'Content-Length: ' . strlen($data)) ); $res = curl_exec ($curl); curl_close($curl); $res = trim($res, "\xEF\xBB\xBF"); $res = json_decode($res, true); return $res;}?> ~~~ **PHP案例代碼及說明(使用接口方式二,兼容早期程序保留)** ~~~ <?phpheader("Content-type: text/html; charset=utf-8");define('APPID', 'wmj_sP3ucguIBQU');define('APPSECRET', 'aOzP1QddgBC04KkLr2eOlujrD9VUDJTP');define('AESKEY', ''); //AES加密密鑰,需要和開放平臺保持一致,否則會報錯,如未啟用加密,請留空$lock_sn = 'WMJ19900007'; //鎖的序列號,這個序列號貼在每個模塊的標簽上。//$lock_sn = aesEncrypt($lock_sn, AESKEY); //傳遞數據經過AES加密,如果需要的話就用。/* * DEMO -- 提交模塊到系統注冊,注意:所有關于設備的操作,都需要先添加設備到系統才可以操作 *///$postlock = httpPost('https://www.wmj.com.cn/api/postlock.html?appid='.APPID.'&appsecret='.APPSECRET, $lock_sn);//$postlock = trim($postlock, "\xEF\xBB\xBF"); //去除BOM頭//print_r(json_decode($postlock, true));/*提交模塊到系統注冊 返回碼說明state:1:成功0:失敗state_code:1:添加成功0:添加失敗1001:參數錯誤或賬戶被禁用1002:沒有上傳設備序列號(加密和不加密不統一也有會導致這個錯誤)1003:設備序列號錯誤1004:設備已存在,請勿重復添加(設備只能在系統中存在一次,如通過其他方式添加了設備,請先刪除)*//* * DEMO -- 開門接口 */$openlock = httpPost('https://www.wmj.com.cn/api/openlock.html?appid='.APPID.'&appsecret='.APPSECRET, $lock_sn);$openlock = trim($openlock, "\xEF\xBB\xBF"); //去除BOM頭print_r(json_decode($openlock, true));/*開門接口 返回碼說明state:1:成功0:失敗state_code:1:開門成功0:開門失敗2001:參數錯誤或賬戶被禁用2002:沒有上傳設備序列號(加密和不加密不統一也有會導致這個錯誤)2003:設備序列號錯誤2004:設備不存在2005:無權限操作(出現這個錯誤是因為設備不是通過此appid添加的)2006:連接服務器出錯,請重試(此服務器是模塊操作服務器)*//* * DEMO -- 刪除模塊接口 *///$dellock = httpPost('https://www.wmj.com.cn/api/dellock.html?appid='.APPID.'&appsecret='.APPSECRET, $lock_sn);//$dellock = trim($dellock, "\xEF\xBB\xBF"); //去除BOM頭//print_r(json_decode($dellock, true));/*刪除模塊接口 返回碼說明state:1:成功0:失敗state_code:1:刪除成功0:刪除失敗4001:參數錯誤或賬戶被禁用4002:沒有上傳設備序列號(加密和不加密不統一也有會導致這個錯誤)4003:設備序列號錯誤4004:設備不存在4005:無權限操作(出現這個錯誤是因為設備不是通過此appid添加的)*//* * DEMO -- 查詢模塊在線狀態 *///$lockstate = httpPost('https://www.wmj.com.cn/api/lockstate.html?appid='.APPID.'&appsecret='.APPSECRET, $lock_sn);//$lockstate = trim($lockstate, "\xEF\xBB\xBF"); //去除BOM頭//print_r(json_decode($lockstate, true));/*查詢模塊在線狀態 返回碼說明state:1:成功0:失敗state_code:1:查詢成功0:查詢失敗5001:參數錯誤或賬戶被禁用5002:沒有上傳設備序列號(加密和不加密不統一也有會導致這個錯誤)5003:設備序列號錯誤5004:設備不存在online1:在線0:不在線*//* * DEMO -- SIM卡信息查詢接口 *///$sim_no = '#########'; //鎖的SIM號碼,和設備序列號一樣,貼在設備上的。//$sim_no = aesEncrypt($sim_no, AESKEY); //傳遞數據經過AES加密,如果需要的話就用。//$sim = httpPost('https://www.wmj.com.cn/api/sim.html?appid='.APPID.'&appsecret='.APPSECRET, $sim_no);//$sim = trim($sim, "\xEF\xBB\xBF"); //去除BOM頭//print_r(json_decode($sim, true));/*SIM卡信息查詢接口 返回碼說明state:1:成功0:失敗state_code:1:獲取成功0:獲取失敗6001:參數錯誤或賬戶被禁用6002:沒有上傳SIM號碼(加密和不加密不統一也有會導致這個錯誤)sim信息說明msisdn:SIM卡業務號碼status:SIM號碼狀態operator:運營商expiration:SIM號碼資費過期時間totaldata:總流量outdata:已使用流量*//* * DEMO -- 替換模塊接口 *///$replace_str = json_encode(array( 'old_sn' => OLD_SN, 'new_sn' => NEW_SN,));//$replock = httpPost('https://www.wmj.com.cn/api/replace.html?appid='.APPID.'&appsecret='.APPSECRET, $replace_str);//$replock = trim($replock, "\xEF\xBB\xBF"); //去除BOM頭//print_r(json_decode($replock, true));/*替換模塊接口 返回碼說明state:1:成功0:失敗state_code:1:替換成功0:替換失敗8001:參數錯誤或賬戶被禁用8002:未上傳舊設備SN8003:舊設備SN錯誤8004:未上傳新設備SN8005:新設備序列號錯誤8006:舊設備不存在或無管理權限8007:新設備已存在,無法替換8008:新舊設備類型不一致,替換失敗*//* *DEMO -- httpPost函數 */function httpPost($url, $str) { $curl = curl_init(); curl_setopt($curl, CURLOPT_TIMEOUT, 30); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($curl, CURLOPT_POSTFIELDS, $str); curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($str)) ); $res = curl_exec ($curl); curl_close($curl); return $res;}/* * AES加密 -- 加密采用128位CBC模式加密 */function aesEncrypt ($value, $key) { $padSize = 16 - (strlen($value) % 16); $value = $value . str_repeat(chr($padSize), $padSize) ; $output = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $value, MCRYPT_MODE_CBC, str_repeat(chr(0), 16)); return base64_encode($output);}?> ~~~ ### 四、在線調試工具 [https://runapi.showdoc.cc/](https://runapi.showdoc.cc/) 使用界面如下: ![](https://doc.wmj.com.cn/Public/Uploads/2020-08-08/5f2ecb2820e20.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看