如何通过发送请求从 Zoom 获取访问令牌?

How to get access token from Zoom by sending a request?

我一直致力于将 Zoom 视频会议 API 集成到我的 Web 应用程序中。通过使用 OAuth 并将我的应用程序授权给 Zoom,我获得了一个授权代码,可用于从 Zoom 获取访问令牌以发出后续 API 请求。我正在向 https://zoom.us/oauth/token endpoint according to this documentation 发送节点请求以获取访问令牌。

我不知道他们为什么使用 zoomcallback 作为端点。以下是发送请求以获取访问令牌的代码:

router.get('/zoomcallback', function(req, res) {

    const zoomtokenep = "https://zoom.us/oauth/token";
    const myappredirect = "https://myapp.io/zoomcallback";

    if (req.query.code) {
        var auth = "Basic " + new Buffer(zoomclientid + ':' +
            zoomclientsec).toString('base64');
        var url = zoomtokenep + '?grant_type=authorization_code&code=' +
            req.query.code + '&redirect_uri=' + myappredirect;
        request.post({
            url: url,
            headers: {
                "Authorization": auth
            }
        }, function(error, response, body) {
            if (error) {
                console.log("Error when getting Zoom token = " + error);
                return;
            }
            body = JSON.parse(body);
            if (body.access_token) {
                accessToken = body.access_token;
                refreshToken = body.refresh_token;
                // Process and securely store these tokens
            } else {
                console.log("FATAL - could not get zoom token");
            }
            return;
        });

    } else {
        console.log("Missing code from Zoom");
    }
    });

这是针对此请求的成功响应:

{
  "access_token": "5kwaMOrdEFWx1jYVK8qg80cImPYBA83Zff",
  "token_type": "bearer",
  "refresh_token": "Ggf2816C5ANa6XVplzO8vwE6IRIXtjvE",
  "expires_in": 3599,
  "scope": "meeting:write user:read recording:write webinar:write"
}

你误解了这里的流程。任何外部身份验证提供程序的流程是:

  1. 点击某个按钮,重定向到他们的(在您的情况下,缩放)登录页面。
  2. 用户在那里提供用户名和密码并登录,然后 auth 提供程序(即缩放)使用 access code.
  3. 重定向到您的应用程序
  4. 现在,您的应用程序将解密或理解访问代码并从该访问代码中获取(某种)授权代码。并将授权码与所有 REST api 请求一起使用。

现在,这里,第二点是 /zoomcallback 出现的地方。您需要在 ZOOM 仪表板中设置它将重定向的位置。在教程中提供的 /zoomcallback 但它可能是任何东西。

基本上,您需要一个路由,zoom 将重定向到该路由,您将在其中获取身份验证令牌并在 Apis 中使用它。