始终使用相同的用户从iOS向YouTube发送经过身份验证的请求

时间:2013-06-21 19:12:29

标签: ios authentication youtube-api oauth-2.0

最近,YouTube决定公开提供视频标签。因此,要获取给定视频的标记,我需要向API发出经过身份验证的请求,作为视频的所有者。在我的情况下,这不是问题,因为我正在获取自己的视频。

但是,由于YouTube强烈建议您使用OAuth2,因此我对身份验证流程感到困惑。由于我总是要作为同一个用户(视频的所有者,也就是我自己)进行身份验证,因此我绝对不需要为应用的实际用户提供任何浏览器页面来执行任何操作。我知道如何使用ClientLogin(硬编码登录和密码到应用程序中)来完成它,但我不知道如何使用OAuth2来解决这个问题。

最后一个细节 - 由于高级答案就足够了,这不一定是相关的 - 是我在iOS上开发的。我还看了这个https://developers.google.com/accounts/docs/OAuth2,特别是那个看起来最接近我的网络服务器案例但却无法从中得到一个清晰的想法。

提前感谢您的帮助,如果您需要我更具体,请不要犹豫。

1 个答案:

答案 0 :(得分:0)

没有支持您的用例的OAuth流程。

一般情况下,您不应将YouTube登录信息作为申请的一部分进行分发。即使这可以通过ClientLogin获得,在一定数量的登录之后,您可能会遇到挑战,因为身份验证服务器会检测到一种奇怪的使用模式。

OAuth不是用于分发单个用户登录大N的,其中N是应用程​​序的用户数。 OAuth旨在让您的应用程序代表最终用户行事,而且因为tags are no longer exposed to end users through the UI,通过API向用户公开它们也没有意义。更多细节可以在这里找到:

http://apiblog.youtube.com/2012/08/video-tags-just-for-uploaders.html

你有多少个视频?需要标签元数据的目的是什么?从务实的角度来看,这里有一些替代实现会更容易,并且不需要用户以您的身份登录:

  1. 存储将视频ID映射到某处服务器上的标记的单个文件,并定期获取此文件。 Google App Engine是一个很好的地方。
  2. 以可预测的格式(您托管视频)将标签数据放入说明中,并从中生成元数据。