【问题标题】:Code 124 (Invalid access token) received for Zoom API calls using JWT使用 JWT 的 Zoom API 调用收到代码 124(无效的访问令牌)
【发布时间】:2021-03-30 15:35:49
【问题描述】:

在使用动态创建的 JWT 令牌,甚至硬拷贝从 App Marketplace 为我的应用提供的令牌时,我的 API 请求总是由于“无效的访问令牌”而失败。

我目前正在处理会议端点,特别是尝试创建会议。端点是:https://eu01api-www4local.zoom.us/v2/users/me/meetings(使用符合 GDPR 的欧盟基本 URL)。

我的 cURL 请求如下所示:

$body = json_encode($body);

$arr = [
    CURLOPT_URL => $url,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => $this->timeout,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_SSL_VERIFYPEER => false,
    CURLOPT_HTTPHEADER => [
        "authorization: Bearer " . $this->generate_JWT(),
        "content-type: application/json"
    ],
    CURLOPT_POST => true,
    CURLOPT_POSTFIELDS => $body
];

$ch = curl_init();
curl_setopt_array($ch, $arr);

$response = curl_exec($ch);
$err = curl_error($ch);
curl_close($ch);  

CURLOPT_SSL_VERIFYPEER 在此处设置为 false,因为我正在从 localhost 进行测试。)

generate_JWT 函数如下所示:

private function generate_JWT()
{
    $payload = [
        "iss" => self::ZOOM_API_SECRET,
        "exp" => time() + $this->timeout,
    ];
    return JWT::encode($payload, self::ZOOM_API_KEY, 'HS256');
}

...使用Firebase\JWT\JWT 类进行编码。

“应用”本身已激活并存在于帐户中,设置为 JWT 类型,无意发布,并且是“帐户级别”。

任何帮助表示赞赏。

【问题讨论】:

    标签: php jwt zoom-sdk


    【解决方案1】:

    GDPR 合规欧盟用户文档中描述的端点实际上不可操作 - 至少对于此类工作而言。必须使用原始的 .us 基本 URL。

    【讨论】:

      猜你喜欢
      • 2021-07-27
      • 2020-09-11
      • 2021-02-12
      • 2020-08-28
      • 1970-01-01
      • 2017-06-16
      • 2015-05-06
      • 2018-04-26
      • 1970-01-01
      相关资源
      最近更新 更多