zoukankan      html  css  js  c++  java
  • 视频综合管理平台EasyNVS在实现代理时调用EasyDSS接口如何携带token?

    上一篇我们讲了TSINGSEE青犀视频为EasyDSS平台开发的EasyNVS管理平台是如何实现EasyDSS的接入。本文我们分享下EasyNVS在实现代理时调用EasyDSS接口,如何携带token。

    通过EasyNVS去管理EasyDSS,首先是通过代理的方式请求EasyDSS的接口,可是一旦EasyDSS中开启了接口鉴权,每一次请求都需要验证是否登陆。那么此时就需要将token信息携带。

    既然需要登录,那么就在代码中请求登录的接口,然后将token信息写入代理请求中,这样就可以实现权限的验证了。

    具体实现方式就是在代码中通过登录请求返回的数据,获取cookie的数据信息,遍历这个数据信息,将这个数据值塞入到代理的请求中。参考代码如下:

    if frpc.Token == "" || time.Since(frpc.TokenTime).Seconds() > float64(conf2.GetConf().SysTokenTimeout) {
       if err := frpc.RefreshToken(); err != nil {
          log.Println(err)
       }
    }
    httpPort := utils.Conf().Section("http").Key("http_port").MustInt(10080)
    director := func(req *http.Request) {
       req.URL.Scheme = "http"
       req.URL.Host = fmt.Sprintf("127.0.0.1:%d", httpPort)
       req.URL.Path = "/live/list"
    
       req.Header.Del("Cookie")
       req.AddCookie(&http.Cookie{
          Name:  consts.SessionSID,
          Value: frpc.Token,
       })
    }
    

    目前EasyDSS视频平台已经支持H.265编码的播放,更好适应了现代视频播放和存储的需要。此外,EasyDSS还支持定制其他功能或者版本,如果有需求,欢迎联系我们了解,EasyDSS提供测试版本,欢迎大家下载测试。

  • 相关阅读:
    .net 第一次请求比较慢
    配置文件读取与修改
    关系型数据库设计
    dynamic动态类型的扩展方法
    软件测试作业(三)
    软件测试作业(二)
    软件项目管理作业(二)
    软件项目管理作业(一)
    软件测试作业(一)
    C#最后一次作业(暂定)
  • 原文地址:https://www.cnblogs.com/easydss/p/14481945.html
Copyright © 2011-2022 走看看