2014-12-07 104 views
1

我想使用新的vimeo api获取基于查询的视频,但我得到401此消息“错误”所需的授权:“必须传递有效的用户令牌。使用javascript搜索视频与vimeo Api

我使用这个代码:

var urlX = 'https://api.vimeo.com/videos?query=elvis&client_id='+VIMEO_API_KEY; 

$.getJSON(urlX, function(data){ 
console.log(data); 
}); 

所以,很显然我有一个身份验证问题。 作为client_id,我使用我在Vimeo仪表板中创建的应用程序中的“客户端标识符”。 我不断提到“用户令牌”的错误,我必须通过Vimeo的仪表板或通过PHP生成一个吗? 我在这里有点迷路。

+0

你从哪里找到关于client_id的信息?这不再有效,我想删除对它的任何引用! – Dashron 2014-12-09 18:57:01

回答

2

通过querystring的client_id不是针对Vimeo API进行API调用的有效方法。

首先,您必须通过oauth2重定向worfklow:https://developer.vimeo.com/api/authentication或通过在您的应用程序页面上生成访问令牌来请求访问令牌。

其次,你必须提供一个访问令牌或者通过授权头API请求:

Authorization: bearer <your_token>

或查询字符串

https://api.vimeo.com/videos?query=elvis&access_token=<your token>

授权标头更安全,并将继续无限期地工作。查询字符串表单将很快做出一些更改,这可能会导致应用程序出现问题。

+0

上帝,非常感谢。你能否把你在这个答案中提供的示例查询字符串放在API文档页面的某个地方? – 2015-06-19 11:59:58

+0

不建议查询字符串格式,并且将来会更改。未来版本将只允许使用“公共”范围访问令牌,仅此而已。 – Dashron 2015-06-20 03:14:22

+0

授权标题中的“承载者”是什么意思? – quemeful 2017-04-26 14:31:26