OAuth 2.0令牌处理。是否有服务器令牌和客户端令牌?

时间:2016-12-15 10:40:17

标签: javascript node.js oauth-2.0 youtube-api google-oauth

我在理解oauth 2.0令牌的原理处理方面遇到了问题。

我的方案是,我有一个基于web的前端后端系统,其中包含node.js和angular 2。 用户应该可以在此网站上传视频。然后创建一些额外的元数据(这个问题无关紧要)。完成后,用户可以通过单击按钮将视频上传到youtube并附加其他数据。

我的问题是这个过程中有多少令牌/凭据。 youtube api需要一个oauth令牌。用户是否也有自己的令牌?

以下是我使用的教程: https://ionicabizau.net/blog/14-uploading-videos-to-youtube-using-nodejs

正如您所看到的,为本地测试创建了一个API令牌。但这个令牌是否在实时版本中以不同的方式生成?我的网站用户如何得到认可。还通过这个令牌?或者我是否必须为他生成第二个令牌?

2 个答案:

答案 0 :(得分:2)

我不确定你的意思是'令牌'

要访问任何Google API,您首先需要在Google Developer console上注册您的申请。然后,您需要创建Oauth2凭据。 Oauth2凭据是您的应用程序将请求用户访问其YouTube帐户上的数据。

在Google Developer控制台上,您需要保存客户端ID,客户端密码和重定向uri。您的代码将需要这三个来验证用户身份。

当用户授予您的应用访问其YouTube数据的权限时。您将从身份验证服务器获取访问令牌和刷新令牌。访问令牌短暂存在大约一个小时,用于向API发出请求(如上传)。刷新令牌可用于在您当前已到期的时间后请求新的访问令牌。

您最终可能会得到以下结果:

客户端ID,客户端分泌,重定向uri和刷新令牌。

如果您有兴趣,我有一个教程,该教程是我的Google初学者入门教程系列的一部分,解释了Oauth2及其工作原理。

答案 1 :(得分:0)

从服务器端生成访问令牌,并将其发送回生成访问请求的客户端。对于所有后续请求,您需要传递访问令牌,该令牌将使用保存在服务器上的令牌签名进行验证,以检查有效请求的身份验证。您将只获得将使用的1个访问令牌。

您还可以使用“刷新”令牌,以防您需要保持访问权限的有效期更长。