【问题标题】:Can not use access token in post request for youtube api v3 on AngularJs hybrid app无法在 AngularJs 混合应用程序上的 youtube api v3 发布请求中使用访问令牌
【发布时间】:2016-06-15 17:28:05
【问题描述】:

我正在制作一个应用程序,可以帮助我通过 youtube api v3 将评论从应用程序提交到视频。现在我在用 gapi 验证了我的帐户后获得了访问令牌,但我不知道为什么我不能将访问令牌与 post api 一起使用,尽管我已经尝试使用 get 并且它运行良好。这是我用来向 youtube api 发送请求以发表评论的代码:

  $scope.commentVideo = function () {
        $http.post('https://www.googleapis.com/youtube/v3/commentThreads', {
            params: {
                part: 'id,snippet',
                snippet: {
                    'channelId': $rootScope.ChanelId,
                    'topLevelComment': {
                        'snippet': {
                            'textOriginal': $scope.cmtstring
                        }
                    },
                    'videoId': $scope.videoId
                },
                access_token: VideosService.getGoogleToken(), //i have get the token from gapi getToken function
                withCredentials: true
            }
        })
          .success(function (data) {
              $log.info(data);

          })
          .error(function (data) {
              $log.info(data);
          });
    };

你能帮帮我吗? 谢谢。

【问题讨论】:

  • 错误信息在哪里?你在这里遗漏了很多细节。
  • @charlietfl 谢谢你的好意。我找到了答案

标签: javascript angularjs youtube youtube-api


【解决方案1】:

我已经解决了这个问题,如果有人像我一样有这个问题(或像我这样的新手),你只需要使用 Gapi.client.request 发送 post/get 请求,清晰干净。这是我用来发送测试数据的代码:

 gapi.client.request({
            path: '/youtube/v3/commentThreads',
            method: 'POST',
            params: { part: 'id,snippet' },
            body: {
                snippet: {
                                'channelId': $rootScope.ChanelId,
                                'topLevelComment': {
                                    'snippet': {
                                        'textOriginal': $scope.cmtstring
                                    }
                                },
                                'videoId': $scope.videoId
                            }
            },
            callback: function (response) {
                $log.info(response);
            }
        });

有关 Gapi 的方法和类的更多信息,请阅读此处:

https://developers.google.com/api-client-library/javascript/reference/referencedocs#gapiclientrequestargs

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-22
    • 2018-08-22
    • 1970-01-01
    • 2018-01-19
    • 2013-09-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多