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

Zoom API URL中‘双重编码’指什么?含斜杠的Session ID如何处理?

如何正确处理Zoom Video SDK会话ID中的斜杠(双重编码)

Zoom文档要求的双重编码指的是两次连续的URL编码,而非Base64或其他转义方式,具体逻辑如下:

  1. 先对原始会话ID做一次标准URL编码,将特殊字符(比如/)转成对应的百分号编码(/→%2F)
  2. 再对第一次编码后的结果做第二次URL编码,把第一次生成的%符号转成%25

针对你的示例ID的具体步骤

你的会话ID是4I8wtN3QRkmf4izPrc/2qA==:

  • 第一次URL编码后:4I8wtN3QRkmf4izPrc%2F2qA==(/被转成%2F)
  • 第二次URL编码后:4I8wtN3QRkmf4izPrc%252F2qA==(%被转成%25)

把这个双重编码后的ID放到URL路径/api/sessions/:sessionId/status中,Zoom服务器会自动解码一次,得到第一次编码的结果4I8wtN3QRkmf4izPrc%2F2qA==,此时%2F会被正确识别为会话ID的一部分,而非URL路径分隔符。

为什么之前的方法无效

  • 单次URL编码:服务器会自动解码一次,%2F变回/,依然会破坏URL路径结构
  • Base64编码:Zoom API期望的是基于原始ID的双重URL编码结果,而非Base64格式
  • Uri类的Data转义:这不是Zoom要求的双重URL编码逻辑,不符合API的解析规则

代码示例(以.NET为例)

string originalSessionId = "4I8wtN3QRkmf4izPrc/2qA==";
// 第一次URL编码
string firstEncode = Uri.EscapeDataString(originalSessionId);
// 第二次URL编码
string doubleEncode = Uri.EscapeDataString(firstEncode);

// 最终用于API请求的URL路径
string apiPath = $"/api/sessions/{doubleEncode}/status";

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 11:21:00