You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JWT从NodeJS后端向LiveKit房间推流?

针对JWT启动推流的解决方案

目前没有官方后端NodeJS SDK的情况下,你可以通过以下方式绕开API Key+Secret的限制,用JWT启动推流:

  • 直接调用REST API:跳过CLI或Go SDK,直接向推流服务的REST接口发送请求,将JWT放在请求头的Authorization字段中,格式为Bearer <你的JWT令牌>。需要确认推流服务是否支持JWT作为认证方式访问启动推流的接口。
  • 封装自定义NodeJS工具函数:用axios或node-fetch这类基础HTTP库,自己写一个简单的调用逻辑,示例如下:
const fetch = require('node-fetch');

async function initiateStream(jwt, streamConfig) {
  const apiEndpoint = 'https://你的推流服务域名/api/streams/start'; // 替换为实际接口地址
  const response = await fetch(apiEndpoint, {
    method: 'POST',
    headers: {
      'Authorization': `Bearer ${jwt}`,
      'Content-Type': 'application/json'
    },
    body: JSON.stringify(streamConfig)
  });

  if (!response.ok) {
    throw new Error(`请求失败: ${response.statusText}`);
  }
  return await response.json();
}

// 使用示例
initiateStream('你的JWT令牌', { streamId: 'xxx', rtmpUrl: 'rtmp://xxx' })
  .then(res => console.log('推流启动成功:', res))
  .catch(err => console.error('启动失败:', err));
  • 确认JWT权限:检查你的JWT令牌是否包含启动推流所需的权限(比如在JWT的scope或permissions字段中是否有对应权限标识),如果权限不足,需要先更新JWT的权限声明。

内容的提问来源于stack exchange,提问作者Efim Kozhemyakin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 20:07:35