【问题标题】:github3.py authorisation lost tokens / multiple machinesgithub3.py授权丢失令牌/多台机器
【发布时间】:2017-01-25 20:13:19
【问题描述】:

我可能在做一些愚蠢的事情,但是......

当尝试使用如下代码检索令牌时:

auth = github3.authorize(user, password, scopes, note, two_factor_callback = two_factor_callback)

我发现 API 创建了一个令牌,然后我将其存储在本地,而且一切都是 hunky dory。

但是,如果我丢失了本地存储的令牌,或者移动到另一台没有本地存储令牌的机器上,我会从授权返回失败。

似乎一旦为给定的note 值创建了令牌,就无法再次获得它,或者用新的值覆盖它。

对于机器的变化,我怀疑需要实现github API中的fingerprint参数。一个临时的解决方法是用你所在的机器独有的东西来加盐note 值,比如 MAC 地址,但这有点难看。

对于令牌存在但它的本地副本已丢失的情况(例如,用户从我存储它的钥匙串中删除它),唯一的解决方案似乎是登录到github网站并手动删除令牌!

这对我来说有点违反直觉!我在这里错过了什么?

我可以看到,也许 github 的服务器没有存储整个令牌,因此无法再次返回它 - 但在这种情况下,我希望能够以一种干净的方式重新生成它。也许有一个,我错过了?

【问题讨论】:

    标签: github-api github3.py


    【解决方案1】:

    对于令牌存在但它的本地副本已丢失的情况(例如,用户从我存储它的钥匙串中删除它),唯一的解决方案似乎是登录到github网站并手动删除令牌!

    您应该能够使用用户的用户名和密码访问授权列表。如果你能找到现有的,你应该可以删除它。

    我可以看到可能是github的服务器没有存储整个令牌,所以不能再次返回它

    我怀疑他们确实存储了它。他们只是拒绝退货。

    但在这种情况下,我希望有一种干净的方式能够重新生成它。也许有一个,我错过了?

    据我所知,没有办法重新生成授权令牌。 GitHub 不会公开生成算法,并且在第一次生成令牌后无法检索它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-21
      • 2020-06-20
      • 1970-01-01
      • 1970-01-01
      • 2015-12-27
      相关资源
      最近更新 更多