前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >视频综合管理平台EasyNVS在实现代理时调用EasyDSS接口如何携带token?

视频综合管理平台EasyNVS在实现代理时调用EasyDSS接口如何携带token?

原创
作者头像
TSINGSEE青犀视频
修改2021-03-05 10:13:54
3000
修改2021-03-05 10:13:54
举报
文章被收录于专栏:TSINGSEE青犀视频

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

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

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

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

代码语言:javascript
复制
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提供测试版本,欢迎大家下载测试。

80d313831370bec0a8821411482c32a4.png
80d313831370bec0a8821411482c32a4.png

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档