LiveGBS 实现了 GB28181 协议,能够接入各个厂家的监控设备和监控平台,实现统一管理,和 web 端无插件播放,同时支持手机、微信播放。

LiveGBS 提供简单的登录鉴权,客户端通过用户名密码登录成功后,服务端返回认证token的cookie, 后续的接口访问, 服务端从cookie读取token进行校验. 但是, 在与客户系统集成时, 往往需要在客户系统完成鉴权过程. 这时就涉及到跨域的问题. 那么,这一套鉴权过程如何应用到跨域场景中呢?

服务端处理

服务端需要做以下处理:

  1. 登录成功, 服务端主动写 token 到 cookie

    按照之前的接口设计, 登录成功, 服务端在 HTTP Response Body 中返回 token,由客户端自己负责将 token 写入 cookie. 在跨域场景中, 这样就行不通了,由于浏览器的限制, 客户端无法将 token 写到非子域名 cookie. 改为服务端主动写 token 到 cookie 就没有这个问题了. 服务端在 HTTP Response Header 中添加 Set-Cookie 字段, 写入 token=xxx

  2. 服务端统一做充许跨域访问设置

    服务端配置充许跨域并且携带cookie, 需要在 HTTP Response Header 中添加以下两项:

    Access-Control-Allow-Credentials: true
    Access-Control-Allow-Origin: $http_origin
    

    Access-Control-Allow-Origin 不可以配置成 *, 而是当前HTTT前求客户端的 Origin

  3. 注销登录时, 服务端主动将 token 从 cookie 清理

    Set-Cookie: token=; expires=Thu, 01 Jan 1970 00:00:00 GMT;
    

客户端处理

客户端不必显示保存 token 到 cookie. 所有和 LiveGBS 的交互接口需要添加跨域配置, xhrFields: { withCredentials: true }crossDomain: true

例如跨域登录接口调用示例如下:

$.ajax({type: "GET",url: "http://other-domain/api/v1/login",xhrFields: { withCredentials: true},crossDomain: true, data: {username: 'admin',password: '21232f297a57a5a743894a0e4a801fc3'//admin},success: function(data) {console.log(data);}
});

转载于:https://www.cnblogs.com/kumukim/p/11006649.html

LiveGBS-GB28181流媒体服务如何实现跨域鉴权相关推荐

  1. LiveNVR传统IP摄像机接入-网页直播实现跨域鉴权

    LiveNVR如何实现跨域鉴权 LiveNVR提供简单的登录鉴权,客户端通过用户名密码登录成功后,服务端返回认证token的cookie, 后续的接口访问, 服务端从cookie读取token进行校验 ...

  2. Golang jwt跨域鉴权

    Golang jwt跨域鉴权 JWT全称JSON Web Token是一种跨域认证解决方案,属于一个开放的标准,它规定了一种Token实现方式,目前多用于前后端分离项目和OAuth2.0 安装jwt ...

  3. Go语言学习笔记——jwt跨域鉴权

    文章目录 Golang jwt跨域鉴权 jwt介绍 JWT 到底是什么? JWT 和 OAuth 选择签名方法 签名方法和密钥类型 安装jwt 简单使用 生成JWT 解析jwt 测试:生成token并 ...

  4. LiveGBS国标流媒体GB28181微信无插件直播如何实现跨域鉴权

    LiveGBS 实现了 GB28181 协议,能够接入各个厂家的监控设备和监控平台,实现统一管理,和 web 端无插件播放,同时支持手机.微信播放. LiveGBS 提供简单的登录鉴权,客户端通过用户 ...

  5. LiveGBS GB28181流媒体服务

    准备工作 使用说明网址:LiveGBS GB28181 国标方案安装使用说明 | 青柿视频流媒体服务解决方案 (liveqing.com) 下载网址:LiveGBS GB28181流媒体服务 | 青柿 ...

  6. LiveGBS GB28181流媒体服务-产品介绍及相关资源

    产品介绍 LiveGBS 国标(GB28181)流媒体服务软件 支持各个版本的GB28181协议: 提供用户管理及Web可视化页面管理: 提供设备状态管理,可实时查看设备是否掉线等信息: 实时流媒体处 ...

  7. GB28181流媒体服务LiveGBS实现web浏览器直接与摄像头语音对讲的配置介绍

    GB28181流媒体服务 国标流媒体服务,支持本地|内网部署,下载试用入口 国标设备语音对讲 支持语音对讲的设备,可以直接接入LiveGBS,这样就可以从控制中心和您关注的设备间,进行语音对讲 第一步 ...

  8. GB28181流媒体服务LiveGBS实现web浏览器直接与摄像头语音对讲的配置简介

    GB28181流媒体服务 国标流媒体服务,支持本地|内网部署,下载试用入口 国标设备语音对讲 支持语音对讲的设备,可以直接接入LiveGBS,这样就可以从控制中心和您关注的设备间,进行语音对讲 第一步 ...

  9. 海康、大华等网络摄像头RTSP_Onvif网页无插件直播流媒体服务器EasyNVR鉴权出现跨域问题的解决方法

    背景分析 随着平安城市.智慧城市.雪亮工程.智能交通等各项建设的持续开展,安防逐渐得到普及,面对如此广阔的市场,对安防企业来说不仅仅是机遇更多的是挑战.现今大多数摄像头一直没能摆脱人工监控的传统监控方 ...

最新文章

  1. 分布式概念-去中心化副本控制实现
  2. linux命令(8)wc
  3. Halcon中visualize_object_model_3d算子详解
  4. php 接口安全解决方案,php接口数据安全解决方案(一)
  5. 白嫖GPU!Kaggle大神带你打比赛!
  6. Docker简易搭建 ElasticSearch 集群
  7. 1074. Reversing Linked List (25)-PAT甲级真题
  8. 如何从C快速过渡到C++
  9. js foreach用法_36 个JS 面试题为你助力金九银十(面试必读)
  10. Vue 学习随笔四 - 路由介绍
  11. 算法入门电子资料《算法图解》+《我的第一本算法书》
  12. 【Lintcode】541. Zigzag Iterator II
  13. android手机传感器,安卓手机传感器
  14. 计算机的空间复用技术应用,MIMO技术的介绍
  15. 记一次bandicom录制的mp4文件损坏修复
  16. 非root用户免密ssh登录到linux---防破解!!
  17. linux监控工具等--zz
  18. 【精读AI论文】dropout----(Improving neural networks by preventing co-adaptation of feature detectors)
  19. [Hexo]Hexo+github搭建静态博客
  20. 安卓讲课笔记3.4 网格布局

热门文章

  1. eclipse 向HDFS中创建文件夹报错 permission denied
  2. net.sf.json.JSONObject 和org.json.JSONObject 的差别
  3. 高性能ASP.NET系统架构设计
  4. CCS中如何新建Platform以及调用
  5. python threading多线程计算
  6. CMB/宇宙学中相关仪器设备和术语
  7. AutoMl 的pytorch类似代码
  8. React 教程:快速上手指南
  9. python项目中requirements的巧用(一键导入所有安装包)
  10. 关于path.join,path.resolve的详细介绍