zoukankan      html  css  js  c++  java
  • 网络穿透/动态组网/视频上云网关EasyNTS组网平台输入账号和密码无法登陆,如何解决?

    EasyNTS作为视频上云网关,具备视频组网、远程运维等功能,上线前会经过研发部-测试部-项目部多重测试,在这个过程中不断完善产品。

    近期我们的开发人员测试EasyNTS的兼容性,发现当在相同的服务器下,如果同时部署了EasyNTS和EasyNVS,在同一浏览器去访问两个服务的web页面,这时假如先登录EasyNVS,就会导致EasyNTS无法登陆;假如直接进入EasyNTS,则会显示网络请求失败。

    原因分析

    原因是登录EasyNVS之后向Cookie中设置了token,EasyNTS在发送请求之后,拿到了EasyNVS的token进行验证,然而肯定是验证失败的,所以导致无法登录。

    Cookie中的值:

    EasyNVS登录之后EasyNTS就报错:

    解决问题

    一开始验证用户是否登陆,是首先通过token进行验证的,但是EasyNTS并不是通过token,是通过sid作为键获取对应的值来进行验证的。所以将EasyNTS中的token验证的代码给去除就可以了。

    // 判断用户是否已经登录
    func userIsLogin(c *gin.Context) (bool, error) {
     
       token := sessions.GetToken(c)
     
       // 如果查找到了 token
       if token != consts.EmptyString {
          username, password, str := security.ResolveToken(token)
          if str == consts.EmptyString && username != consts.EmptyString && password != consts.EmptyString {
             // 从 session 中获取用户 ID 同 token 中解析,二次验证防止出错
             userID := sessions.GetUserID(c)
             if userID == username {
                return true, nil
             } else {
                return false, errors.New("Session信息与令牌信息不一致,请重新登录!")
             }
          } else {
             return false, errors.New("令牌已过期,请重新登录!")
          }
       }
     
       return false, errors.New("未查找到令牌信息,请重新登录!")
    }
    

      

    解决之后就可以正常使用,正常登录:

    更多关于EasyNTS云组网

    • 稳定可靠
      强大的服务器群支持组网环境,多类型服务器可供选择,高性能,高可用;
    • 简单易用
      基于动态组网服务创建智能网络,按需选择需要组网的网络成员实现点点互联;
    • 数据安全
      采用MQTT加密协议,具有运算速度快,安全性高,资源损耗低的优势;
    • 高效管理
      通过网页集中管理每个网点,彻底解决部署复杂,维护低效的问题。

    如想详细了解,可进入TSINGSEE青犀视频进行浏览查阅。TSINGSEE青犀视频团队专注于计算机视觉、模式识别领域的开发与研究, 主力产品涵盖支持ONVIF、RTSP、GB/T28181等多协议、多路数的智能分析服务器。主要产品包括EasyGBS国标视频云服务、EasyDSS互联网视频云服务、EaayCVR安防视频云服务、EasyRTC视频会议云服务、EasyNVR视频边缘计算网关、EasyNTS上云网关等等,同时还拥有EasyDarwin开源社区及开放平台。

    EasyDarwin是国内视频流媒体团队TSINGSEE青犀视频开发和维护的开源社区。从2012年12月创建并发展至今,从原有的单服务的流媒体服务器形式,扩展成现在的云平台架构的开源项目。

     
  • 相关阅读:
    Lucene简介
    网页去重和网页反作弊
    一个不应该犯的错octave
    使用有道笔记
    向量操作的思想
    暗时间(介绍)-关于坚持的一个故事
    bootstrap插件学习-bootstrap.tab.js(读码)
    Bootstrap 实现CRUD示例及代码
    Bootstrap Table 使用示例及代码
    Bootstrap Table相关参数及属性、方法
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/13716768.html
Copyright © 2011-2022 走看看