【问题标题】:VIMEO API Search private videosVIMEO API 搜索私人视频
【发布时间】:2016-05-31 19:21:15
【问题描述】:

我对 Vimeo API 有疑问,他们显示文档的方式让我很头疼。 看,我需要向api发出请求以检索私人视频的信息。我有一个代码可以做到这一点,但普通视频:

$.ajax({
   type: 'GET',
   url: 'https://vimeo.com/api/v2/video/' + x.val() + '.json',
   jsonp: 'callback',
   dataType: 'jsonp'
 }).done(function(data){
  $('#vimeo #nameVideo').attr('value', data[0].title);
  $('#vimeo #descriptionVideo').attr('value', data[0].description);
});

而且它有效! 所以,问题是:我不知道将身份验证信息放在哪里或如何访问私人视频。我创建了应用程序,Vimeo 提供了客户端标识符、客户端密码和访问令牌,范围为公共和私有。

我使用 vimeo API Playground 进行测试,这就是我想要的: Vimeo Playground Example

谢谢大家。

【问题讨论】:

    标签: jquery json ajax vimeo-api


    【解决方案1】:

    根据API docs,您必须在请求中发送身份验证标头。

    您首先必须POST https://api.vimeo.com/oauth/access_token 获取访问令牌。

    一旦你有了,你就可以使用授权标头进行 ajax 调用:

    $.ajax({
       type: 'GET',
       url: 'https://api.vimeo.com/videos/:id',
       headers: {
         'Authorization': 'Bearer ' + token 
       }
     }).done(function(data) {
          $('#vimeo #nameVideo').attr('value', data[0].title);
          $('#vimeo #descriptionVideo').attr('value', data[0].description);  
      });
    

    【讨论】:

    • 我刚刚创建但未完成转码的私人视频出现 404 是否正常?
    【解决方案2】:

    您提供的代码是针对简单 API 的,这是一个与 API 游乐场完全不同的系统。您可以通过比较您使用的网址来判断。此处记录了新的 API:https://developer.vimeo.com/api

    【讨论】:

      【解决方案3】:

      好吧,经过一段时间的阅读和调查,我已经解决了我的问题。 首先,我发现了这个: https://www.npmjs.com/package/vimeo Vimeo有一个npm的包,所以,首先想到我们需要做的就是安装它

      npm install vimeo
      

      然后在相应的路由器控制器中,在我的例子中为 videosdb.js,创建所需的变量

      var Vimeo = require('vimeo').Vimeo;
      //Put the data obtained when you create the app in developer.vimeo.com
      var vimeoVids = new Vimeo('<Client Identifier>', '<Client Secret>', '<Access Token>');
      

      这样,您就可以使用 Vimeo Api 为所欲为。 就我而言,检索特定用户的私人视频信息。

      vimeoVids.request({
        path: '/users/<User Name>/videos/<Video ID>'
      }, function(e, data){
         if(e){
           console.log(e);
         }
         res.send(data);
       })
      

      })

      【讨论】:

      • 只是出于好奇问一下:这是否意味着您在 Javascript 文件中使用了“客户端密码”?
      • 这个包是为node js而不是浏览器设计的,你不应该公开你的秘密
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-01
      • 2019-08-31
      • 1970-01-01
      相关资源
      最近更新 更多