2

我想为我的应用程序使用谷歌云打印服务,概念是:买家可以从我的网站购买产品,他应该将订单列表发送到供应商的打印机。

为此,供应商应在其谷歌帐户中注册打印机,买家将打印请求发送到选定供应商的打印机,订单文件应在供应商的打印机上打印。

问题是:云打印应用程序正在使用 OAuth2 授权,它需要 google 帐户登录和 client_id 来获取访问令牌。因此,为了获取打印机列表并提交打印作业,买家需要使用来自后端的供应商的谷歌凭据从谷歌账户登录。(有或没有浏览器)这是不可接受的,因为它还允许买方使用供应商帐户的其他谷歌服务(例如邮件、文档)。

所以我的问题是,还有其他方法可以获取访问令牌吗?也欢迎任何其他解决方案。

注意:我参考了google-pythonCodecloudprinting模块。

4

1 回答 1

1

您要做的是让供应商使用 OAuth2 授权并存储他们的 access_token,更重要的是 refresh_token。买家根本不需要向 Google 授权,您只需使用适当的供应商访问令牌将他们的打印作业发送到供应商打印机。这也使得处理对不同打印机的访问变得更加容易,因为每个供应商的 Google 帐户已经可以访问他们自己的打印机。

刷新令牌是一个长期存在的令牌(在供应商撤销之前有效),即使在短期(1 小时)访问令牌到期后,您也可以获取新的访问令牌。

于 2013-05-21T18:07:13.847 回答