当前位置: 首页 > news >正文

直播推流拉流Token验证流程(直播服务器:SRS,验证服务器:EGGS(nodejs))

用Egg.js框架来写,SRS的HTTP Callback Token认证,

目标:推流和拉流观看时都进行Token验证,不合法的话就不能进行。同时还要配置SRS端,这可能涉及到SRS的配置文件和回调设置。

原理:

SRS的HTTP Callback机制:SRS在推流和拉流的时候会向配置的HTTP服务器发送请求,根据返回的状态码决定是否允许操作。比如,推流时,SRS会发送一个POST请求到指定的回调URL,如果返回HTTP 200,就允许,否则拒绝。所以,用户需要编写一个能够处理这两个回调的接口,并进行Token验证。

if (isValid) {
ctx.status = 200;
} else {
ctx.status = 403;
}

Egg.js部分:

需要创建一个Controller,处理两个路由:一个用于直播推流回调,一个用于拉流播放回调。这两个回调的处理逻辑可能类似,都是检查Token是否有效。

Token的生成和验证逻辑是关键。通常Token会包含过期时间、流名称、加密签名等信息。例如,用户可能生成一个类似md5(secret + stream + exp)的签名,然后将stream、exp、sign作为参数。验证的时候,服务端根据同样的算法重新计算签名,比较是否一致,并检查时间是否过期。

配置SRS的conf文件:

SRS的

http://www.xdnf.cn/news/263485.html

相关文章:

  • 智能决策支持系统的系统结构:四库架构与融合范式
  • k8s笔记——kubebuilder工作流程
  • 嵌入式硬件篇---STM32F103C8T6STM32F103RCT6
  • Flink 的状态机制
  • Qt中实现工厂模式
  • 音视频开源项目列表
  • 【2025年】MySQL面试题总结
  • 实战探讨:为什么 Redis Zset 选择跳表?
  • xLua笔记
  • 55.[前端开发-前端工程化]Day02-包管理工具npm等
  • Oracle 11g通过dg4odbc配置dblink连接神通数据库
  • Oracle RAC ‘Metrics Global Cache Blocks Lost‘告警解决处理
  • 小程序滚动条隐藏(uniapp版本)
  • 【Java学习】通配符?
  • Java多语言DApp质押挖矿盗U源码(前端UniApp纯源码+后端Java)
  • 使用 Selenium 爬取动态网页数据 —— 实战与坑点详解
  • 基于LangChain 实现 Advanced RAG-后检索优化(下)-上下文压缩与过滤
  • 将Airtable导入NocoDB
  • 多协议 Tracker 系统架构与传感融合实战 第六章 多传感器时钟同步与数据对齐
  • SETNX的存在问题和redisson进行改进的原理
  • 【RAG】向量?知识库的底层原理:向量数据库の技术鉴赏 | HNSW(导航小世界)、LSH、K-means
  • 【Hive入门】Hive与Spark SQL深度集成:执行引擎性能全面对比与调优分析
  • C语言蓝桥杯真题代码
  • Go反射-通过反射调用结构体的方法(带入参)
  • 解决奥壹oelove婚恋原生小程序上架问题,彻底解决解对问题增强版旗舰版通用
  • 计算机网络八股文--day4 --传输层TCP与UDP
  • WebAPI项目从Newtonsoft.Json迁移到System.Text.Json踩坑备忘
  • 【项目实践】boost 搜索引擎
  • 基于 JSP 和 Servlet 的数字信息分析小应用
  • 【Linux】驱动开发方法