繁体   English   中英

如何为不同的红宝石方法创建一个登录? #雷神

[英]How can I create a single login for different ruby methods? #thor

我正在使用gmail gem制作用于gmail的命令行工具。

def login
  $username = ask 'Enter your username:'
  $password = ask 'Enter your password:'
  gmail = Gmail.connect!($username, $password)
  say 'User Authorized!'
end
def mail
  gmail = Gmail.connect!($username, $password)
  to_mail = ask 'Enter email-id:'
  subject_mail = ask 'Enter subject:'
  body_mail = ask 'Enter body:'
  email=gmail.compose do
    to to_mail
    subject subject_mail
    body body_mail
  end
  gmail.deliver(email)
  gmail.logout
end

使用thor gem创建不同的方法,但是我无法为这两个命令创建一次登录。 我该如何实现?

为什么我不能在mail方法中访问$ username和$ password。

我想创建一个命令登录名,然后在所有不同方法中使用用户名和密码。

每个命令都是一个新过程,因此最后一个命令中的数据实际上已经消失了。 您需要坚持下去。

由于它是在本地运行的命令行工具,因此您可以将用户数据保存到本地文件中,例如〜/ .yourapp / config 因此,下次您可以首先查找本地配置文件。

当然,您可以使用Google OAuth访问用户的Google数据,而不是直接询问用户的凭据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM