javascript - 无法在AngularJs混合应用程序上的youtube api v3的发布请求中使用访问 token

标签 javascript angularjs youtube youtube-api

我正在制作一个可以帮助我通过youtube api v3将应用程序中的评论提交到视频的应用程序。现在,我在用gapi验证了我的帐户之后就拥有了访问 token ,但是我不知道为什么我不能在post api中使用访问 token ,尽管我已经尝试过使用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);
          });
    };

你能帮助我吗?,
谢谢。

最佳答案

我已经解决了这个问题,如果有人像我这样(或像我这样的新手)遇到这个问题,您只需要使用Gapi.client.request即可清晰,干净地发送发布/获取请求。这是我用来发送测试数据的代码:

 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

关于javascript - 无法在AngularJs混合应用程序上的youtube api v3的发布请求中使用访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35754368/

相关文章:

javascript - 如何让进度条获取文本类型输入的值?

javascript - 具有最小值和千位分隔符的数字的正则表达式

javascript - Three.js - 尝试将子窗口包含到主窗口中

javascript - 使用 TypeScript 将数组添加到 Angular 2 中的模型和数据

javascript - YouTube API v3 pageToken生成随机视频

iphone - 为什么在iPhone上播放通过JavaScript嵌入的youtube时,移动浏览器只显示一个加载器,然后仅显示一个黑色矩形?

javascript - 使用 useMediaQuery 进行 Chakra ui 单元测试

javascript - 每次点击时都会再次调用自定义函数

angularjs - Angular-material:删除离散 md-slider 中的点

php - 使用 php 从嵌入代码生成 youtube 缩略图