您想开始学习称为 OAuth 的东西。别担心,只是听起来很吓人。我会尽力为你减轻一点。但在我开始之前,再多的绕开 OAuth 的事情也不会让你有任何收获。好消息是:它没有那扭曲。
想象 你 是 YouTube。一个应用程序,比如某人编写的一个您不知道的 Web 应用程序将向您发出 HTTP 请求。
请求是说:“嘿,YouTube 朋友!你能把这堆色情作品添加到约翰的播放列表中,然后公开给所有人看吗?”
你会怎么回答?
如果 我 是 YouTube,我的会是 --
“是的!骗你的,伙计!先去问约翰!然后,给我一些你做过的证据。”
“等一下,在你离开之前,我忘了问,你到底是谁?你有什么东西可以告诉我你是谁?” 我,YouTube , 会添加。
你看到问题了吗?对 YouTube 而言,这笔交易实际上涉及两方:
发出低级请求的应用程序;和
可怜的约翰,即使他应该,他也可能对这一切一无所知。
否则,如何阻止任何应用程序向 YouTube(或 Facebook、Google、Github 或其他任何地方)询问 John 的数据?
因此,就 YouTube 而言,它需要一种方法让应用程序向 YouTube 进行身份验证(即您在 Google 开发者控制台上创建的应用程序 ID 和客户端密码或应用程序密码),并且它需要约翰的许可才能让上述应用程序执行它要求您 (YouTube) 执行的操作(因此 John 需要与 UI 交互)。
输入 OAuth。
OAuth 是允许这种合作交易的规则文档。但要使其发挥作用,YouTube、Web 应用程序和 John 这三者必须首先合力。
OAuth 中有三方:
OAuth 服务器——拥有 John 的数据。在此示例中,它是 YouTube。
想要对保存在 OAuth 服务器(即 YouTube)上的 John 的数据执行某些操作的第三方应用程序。
可怜的 John,OAuth 服务器 (YouTube) 上的用户,他还想使用第三方 Web 应用程序,希望 YouTube 对 John 的数据进行处理。
现在,在编写一行代码之前,有很多关于 OAuth 的知识需要了解,我不能在这里全部写完,但 here's a YouTube playlist 首先解释 OAuth 的基础知识,然后在 (抱歉,没有 PHP) C# 和 JavaScript。
一旦您了解了 OAuth 事务机制并查看了一些代码,然后重新访问您链接到的 YouTube API 文档页面,它就会开始变得非常有意义。它会单击,您无需在任何地方寻找帮助编写该示例。它会像便便一样从你身上出来。 :-)