我使用脱机映射来组织我的电子邮件,为了使用我的工作帐户,我现在不得不使用OAuth2身份验证。
我成功地获得了一个刷新令牌,因此,如果我相应地设置变量oauth2_refresh_token,那么offlineimap就能工作。但是,我想存储加密的刷新令牌(我使用unix,它将其存储为一个gpg加密文件)。
我无法使用oauth2_refresh_token_eval设置从pass中读取刷新令牌的python代码,或者相应的gpg文件,这可能是因为我完全缺乏python知识。我尝试使用与remotepasseval相同的代码(而后者的代码工作得很好):
def get_pass(account):
return check_output("pass email/" + account, shell=True).splitlines()[0]但我得到了以下错误:
TypeError: a bytes-like object is required, not 'str'实际上,这里的offlineimaprc模板指定oauth2_refresh_token_eval返回的值“必须是字节”(不管这意味着什么)。
在这种情况下,正确的代码是什么?
发布于 2022-03-06 20:40:36
这对我起了作用:
def get_token(account):
return check_output("pass " + account, shell=True).decode().splitlines()[0]https://unix.stackexchange.com/questions/690163
复制相似问题