最近在使用EasyNVR的過程當中,不少小夥伴諮詢關於接口調用的問題,初步判斷應該是遇到權限問題(401 Unauthorized)。EasyNVR爲第三方系統和應用提供了標準的API接口,方便對接二次開發爲專屬於本身企業的互聯網直播平臺。接口通常分爲接口定義者和接口調用者,定義者能夠規定接收參數的類型及返回形式,而接口定義者則只能徹底按照接口定義者規定的參數進行訪問。就叫是咱們所說的webService(網絡服務)。
jquery
API採用Restful風格的Http協議,所有請求都使用Get/Post方式,字符不區分大小寫。基本結構以下:web
http://<IP>:<Port>/api/<Version>/<Action>?<Param1>=<value>&<Param2>=<Value>&.....
參數名稱 | 定義 | 說明 |
IP | Platform Address | IP地址 |
Port | Platform Port | 通信端口 |
Version | API Version | API版本 |
Action | Action | 執行的操做 |
Param | Action Parameter | 操做所使用的參數,能夠有多個參數,每一個參數對應一個Value。 |
Value | Parameter Value | 參數值,若是Value的字符串中出現&等特殊字符,則必須用」」包住Value。 |
調用API會返回Json字符串,表明操做返回的結果ajax
{ "EasyDarwin" : { "Body" : { …… }, "Header" : { "CSeq" : "1", "ErrorNum" : "200", "ErrorString" : "Success OK", "MessageType" : "MSG_SC_API_ACK", "Version" : "1.0" } } }
許多小夥伴只注重接口的功能,每每直接傳參調接口,因而就出現開篇的401報錯;最簡單的方法是,在咱們拿到接口文檔後,能夠先閱讀一下文檔,作到心中有數;api
接口調用前先進行簡單的說明:EasyNVR大部分的調用接口須要在cookie中攜帶token信息;對於這個token信息,是經過login接口返回的。當咱們成功請求接口: 」/api/v1/login?username=xxx&password=xxx「時,會返回一個token信息;安全
{ "EasyDarwin" : { "Body" : { "Token" : "a19cb5f6e7d2449d8d24c8a0fc554ca7" }, "Header" : { "CSeq" : "1", "ErrorNum" : "200", "ErrorString" : "Success OK", "MessageType" : "MSG_SC_SERVER_LOGIN_ACK", "Version" : "1.0" } } }
咱們對獲取到的token信息存儲到cookie中。出現401,大多數狀況是cookie中tooken的攜帶、接口格式的錯誤、傳遞參數的錯誤。服務器
友情提示: 有的大兄弟在請求login接口時就發現出現401權限限制;該接口中password是通過MD5加密的。在進行其餘接口請求時在request headers 的cookie會攜帶對應的tooken來進行請求。微信
<script src="/adminlte-2.3.6/plugins/cookie/jquery.cookie.min.js"></script>
$.ajax({ type: "GET", url: "api/v1/login", data: { username: username, password: password }, global: false, success: function(data) { try { var ret = JSON.parse(data); var token = ret.EasyDarwin.Body.Token; $.cookie("token", token); //將tooken設置進cookie中 $.cookie("username", username); } catch (e) { console.log(e); } },
經過ajax請求成功後對得到數據的處理,將tooken出入cookie中:cookie
此時當咱們進行其餘接口的請求時,會發如今request header 存在cookie tooken,而且能夠成功請求接口。網絡
EasyNVR智能雲終端硬件設備,填補了互聯網直播行業設備空白,軟硬一體,雲端運維。體積小,方便放置部署;7*24小時不間斷運行,低功耗;省去自建視頻服務器高額費用;專屬視頻服務,免除了與其餘硬件的相互影響,通電聯網便可成功運行,部署操做簡單。
運維
EasyNVR能夠說已經成爲國內視頻互聯網化基礎建設的排頭兵,幾乎各個民生行業都已經有了EasyNVR視頻能力輸出的身影,EasyNVR多年服務於各行各業視頻基礎建設,EasyNVR的可靠性、完整性、穩定性已經受到了業界的普遍承認!
經過將景區的攝像頭經過EasyNVR系統可使管理部門建設掌上視頻監管系統(景區內部使用)方便隨時隨地查各個景區的狀況。同時能夠將景區的經典風景經過微信、微博、網站和APP等方式對公衆展現,用於宣傳景區風景,展現景區魅力,提升景區知名度。
目前各地市社會視頻資源存在種類繁多,各系統獨立運行,沒有有效整合和聯網應用,經過EasyNVR系統,將各種視頻資源整合,統一管理、統一調度,資源共享,實現了資源利用最大化,避免了重複建設。
把傳統分散的校園監控彙總到EasyNVR系統,實現把傳統的本地監控提高到隨時隨地的遠程監控,把傳統的純粹的監控上升到管理,使視頻監控成爲學校教學管理的有力工具。更重要的是讓家長一塊兒參與,提高教學的主動性。提高學校聲譽和學校品牌。
將工地的攝像頭經過平臺對施工方、監理方和監管部門開放,方便實時瞭解工程進度,工地人員安全以及財產狀況,自成力能平臺,專爲工地構建的視頻監控平臺。
而隨着互聯網和移動互聯網被廣大消費者接受,「社會共治」將是是明廚亮竈目前的核心理念。採用社會共治方式,將各餐飲企業的後廚視頻經過EasyNVR系統讓老百姓經過手機可實時看到後廚的狀況,既起到全社會監督的效果也是對餐飲企業的宣傳。
EasyNVR是一款擁有完整、自主、可控知識產權,同時又可以具有軟硬一體功能的安防互聯網化流媒體服務器,可以經過簡單的網絡攝像機通道配置,將傳統監控行業裏面的高清網絡攝像機IP Camera、NVR等具備RTSP、Onvif協議輸出的設備接入到EasyNVR,EasyNVR可以將這些視頻源的音視頻數據進行拉取,轉換爲RTMP/HLS,進行全平臺終端H5直播(Web、Android、iOS),而且EasyNVR可以將視頻源的直播數據對接到第三方CDN網絡,實現互聯網級別的直播分發。詳情可訪問EasyNVR官網:http://www.easynvr.com