EasyNVR摄像机网页无插件直播方案H5前端构建之:关于接口调用常见的一些问题(401 Unauthorized)...
背景分析
最近在使用EasyNVR的過程中,很多小伙伴咨詢關于接口調用的問題,初步判斷應該是遇到權限問題(401 Unauthorized)。EasyNVR為第三方系統和應用提供了標準的API接口,方便對接二次開發為專屬于自己企業的互聯網直播平臺。接口一般分為接口定義者和接口調用者,定義者可以規定接收參數的類型及返回形式,而接口定義者則只能完全按照接口定義者規定的參數進行訪問。就叫是我們所說的webService(網絡服務)。
本篇博文將基于自身對EasyNVR接口的調用和一些用戶的反饋的問題來對接口調用進行說明:
接口概述
API采用Restful風格的Http協議,全部請求都使用Get/Post方式,字符不區分大小寫。基本結構如下:
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字符串,代表操作返回的結果
{"EasyDarwin" : {"Body" : {……},"Header" : {"CSeq" : "1","ErrorNum" : "200","ErrorString" : "Success OK","MessageType" : "MSG_SC_API_ACK","Version" : "1.0"}} }接口的調用
許多小伙伴只注重接口的功能,往往直接傳參調接口,于是就出現開篇的401報錯;最簡單的方法是,在我們拿到接口文檔后,可以先閱讀一下文檔,做到心中有數;
接口調用前先進行簡單的說明: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來進行請求。
實例展示如下:
首先引入jqueryCookie,用于設置cookie(如果有其他方法設置cookie可以不用引用)
<script src="/adminlte-2.3.6/plugins/cookie/jquery.cookie.min.js"></script>通過ajax來進行卡接口的請求
- 在沒有調用接口進行設置前
通過ajax請求成功后對獲得數據的處理,將tooken出入cookie中:
- 調用接口并進行cookie設置后:
此時當我們進行其他接口的請求時,會發現在request header 存在cookie tooken,并且可以成功請求接口。
EasyNVR硬件設備
EasyNVR智能云終端硬件設備,填補了互聯網直播行業設備空白,軟硬一體,云端運維。體積小,方便放置部署;7*24小時不間斷運行,低功耗;省去自建視頻服務器高額費用;專屬視頻服務,免除了與其他硬件的相互影響,通電聯網即可成功運行,部署操作簡單。
EasyNVR應用場景
EasyNVR可以說已經成為國內視頻互聯網化基礎建設的排頭兵,幾乎各個民生行業都已經有了EasyNVR視頻能力輸出的身影,EasyNVR多年服務于各行各業視頻基礎建設,EasyNVR的可靠性、完整性、穩定性已經受到了業界的廣泛認可!
通過將景區的攝像頭通過EasyNVR系統可以使管理部門建設掌上視頻監管系統(景區內部使用)方便隨時隨地查各個景區的情況。同時可以將景區的經典風景通過微信、微博、網站和APP等方式對公眾展示,用于宣傳景區風景,展示景區魅力,提高景區知名度。
目前各地市社會視頻資源存在種類繁多,各系統獨立運行,沒有有效整合和聯網應用,通過EasyNVR系統,將各類視頻資源整合,統一管理、統一調度,資源共享,實現了資源利用最大化,避免了重復建設。
平安校園把傳統分散的校園監控匯總到EasyNVR系統,實現把傳統的本地監控提升到隨時隨地的遠程監控,把傳統的純粹的監控上升到管理,使視頻監控成為學校教學管理的有力工具。更重要的是讓家長一起參與,提升教學的主動性。提升學校聲譽和學校品牌。
平安工地將工地的攝像頭通過平臺對施工方、監理方和監管部門開放,方便實時了解工程進度,工地人員安全以及財產情況,自成力能平臺,專為工地構建的視頻監控平臺。
明廚亮灶而隨著互聯網和移動互聯網被廣大消費者接受,“社會共治”將是是明廚亮灶目前的核心理念。采用社會共治方式,將各餐飲企業的后廚視頻通過EasyNVR系統讓老百姓通過手機可實時看到后廚的情況,既起到全社會監督的效果也是對餐飲企業的宣傳。
EasyNVR安防攝像機網頁流媒體服務
EasyNVR是一款擁有完整、自主、可控知識產權,同時又能夠具備軟硬一體功能的安防互聯網化流媒體服務器,能夠通過簡單的網絡攝像機通道配置,將傳統監控行業里面的高清網絡攝像機IP Camera、NVR等具有RTSP、Onvif協議輸出的設備接入到EasyNVR,EasyNVR能夠將這些視頻源的音視頻數據進行拉取,轉換為RTMP/HLS,進行全平臺終端H5直播(Web、Android、iOS),并且EasyNVR能夠將視頻源的直播數據對接到第三方CDN網絡,實現互聯網級別的直播分發。詳情可訪問EasyNVR官網:http://www.easynvr.com
轉載于:https://www.cnblogs.com/babosa/p/11123975.html
總結
以上是生活随笔為你收集整理的EasyNVR摄像机网页无插件直播方案H5前端构建之:关于接口调用常见的一些问题(401 Unauthorized)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BZOJ 2442: [Usaco201
- 下一篇: 手机端h5页面字体大小适配