0

我目前正在开发一个需要集成 Vimeo 的应用程序。因此,我正在调整我的工作 OAuth2 客户端以允许对 Vimeo 的授权,这是新的 beta API。

但是,有些事情我不清楚,文档在这件事上有点含糊。

  1. 我应该在身份验证之前获得客户端授权吗?
  2. 用户身份验证 url 是,我应该使用所需参数向该 URLhttps://api.vimeo.com/oauth/authorize发送GET或请求吗?POST
  3. 我应该发送一个基本授权标头(Authorization : basic base64(client_id:client_secret)连同身份验证,还是应该是未经身份验证的授权标头(Authorization : Bearer unauthenticated_access_token)?
  4. 我应该通过 UIWebView 还是通过 Safari 处理身份验证对话框?

此外,我似乎得到了错误:{ "error": "An unknown error has occured. Please let us know!"}通过 Safari 处理身份验证时。有没有人知道实际出了什么问题或提供了一种找出问题的方法?(似乎 Vimeo 在一夜之间改进了他们的错误显示;))

我得到的实际错误是redirect_uriandclient_id丢失了,但我有理由确定它们在执行 a 时在请求正文中提供POST,或者在执行 a 时在参数中提供GET。任何指针?

4

1 回答 1

1
  1. 客户端授权不是生成用户身份验证所必需的。客户端授权只需要进行未经身份验证的 api 请求。

  2. 您没有向 api.vimeo.com/oauth/authorize 发出请求,而是将您的用户发送到那里。您应该创建一个链接,并将其放在页面上供用户单击。他们将向该端点发出 GET 请求,但它不应该通过您的服务器发生。

  3. 由于您的客户端正在向 /oauth/authorize 发出请求,因此您无法定义标头。您需要向 /oauth/access_token 提供一个授权标头,这应该是Authorization : basic base64(client_id:client_secret)

我们昨晚确实在我们的 oauth 错误报告中修复了一个错误:D。抱歉造成暂时的混乱。

没有更多信息,我无法真正回答您的错误消息。我会添加一些评论,然后用更多信息更新这个答案。

于 2014-04-04T20:11:03.053 回答