Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 如何在Google应用程序引擎启动器中保存我的用户帐户和密码?_Google App Engine - Fatal编程技术网

Google app engine 如何在Google应用程序引擎启动器中保存我的用户帐户和密码?

Google app engine 如何在Google应用程序引擎启动器中保存我的用户帐户和密码?,google-app-engine,Google App Engine,我正在使用Google应用程序引擎启动器将我的应用程序部署到GAE服务器。有没有办法保存我的用户帐户和密码,这样我就不必在每次重新部署时都键入它 我仍然处于使用GAE的学习阶段,所以当我每晚重新部署15次以上的时候,键入16个字符的密码会变得很烦人 您可以编写一个命令行脚本来执行appcfg.py 您可以指定要与--email=命令行参数一起使用的电子邮件 您可以使用--passin参数从stdin传入密码。appcfg已经为您完成了这项工作。根据文件: appcfg.py从获取应用程序ID 显

我正在使用Google应用程序引擎启动器将我的应用程序部署到GAE服务器。有没有办法保存我的用户帐户和密码,这样我就不必在每次重新部署时都键入它


我仍然处于使用GAE的学习阶段,所以当我每晚重新部署15次以上的时候,键入16个字符的密码会变得很烦人

您可以编写一个命令行脚本来执行
appcfg.py

您可以指定要与
--email=
命令行参数一起使用的电子邮件


您可以使用
--passin
参数从stdin传入密码。

appcfg已经为您完成了这项工作。根据文件:

appcfg.py从获取应用程序ID 显示app.yaml文件,并提示您输入 您的电子邮件地址和密码 谷歌账户。成功后 使用您的帐户登录, appcfg.py存储一个“cookie”,以便 不需要提示输入密码 在随后的尝试中


如果您没有遇到这种情况,您可能希望尝试删除任何
.appcfg*
配置文件。

您可以创建一个包含以下文本的.bat文件:

echo <password> | c:\python25\python.exe "C:\Program Files\Google\google_appengine\appcfg.py" --email=username --passin update <directory of app on your pc>
echo | c:\python25\python.exe“c:\Program Files\Google\Google\u appengine\appcfg.py”--电子邮件=用户名--密码更新

(根据GAE文档,您不能将密码指定为命令行选项)

接受的解决方案对我不起作用。使用管道是可行的

echo <password> | c:\python25\python.exe "C:\Program Files\Google\google_appengine\appcfg.py" --email=username --passin update <directory of app on your pc>
echo | c:\python25\python.exe“c:\Program Files\Google\Google\u appengine\appcfg.py”--电子邮件=用户名--密码更新

用于保存OAuth2令牌,这样您就不需要一直重新键入密码。

其他提示和技巧:使用命令行,如下所示:

要让appcfg.py在命令行上接受--password而不是提示输入密码,请执行以下操作:

更改:*appengine/google\u appengine/google/appengine/tools/appcfg.py*

在parser.add_选项部分添加以下内容:

parser.add_option("-p","--password", action="store", dest="password",
                  metavar="PASSWORD", default=None,
                  help="The password")
然后修改GetUserCredentials函数:

def GetUserCredentials():
  """Prompts the user for a username and password."""
  email = self.options.email
  if email is None:
    email = self.raw_input_fn("Email: ")

  password = self.options.password
  if password is None:
    password = self.raw_input_fn("Password: ")

#      password_prompt = "Password for %s: " % email
#      if self.options.passin:
#        password = self.raw_input_fn(password_prompt)
#      else:
#        password = self.password_input_fn(password_prompt)

  return (email, password)
就这样,现在您可以调用:

appcfg.py update demos/guestbook --email=email@gmail.com --password=xxxx

参考:

对于windows 7,C:\Users\username\.appcfg\u cookies下的.appcfg\u cookies

非常简单。只需将其放入批处理文件:

appcfg.py --oauth2  update  "X:\local\path\to\your\app.yaml\file" 

你第一次运行它时,谷歌将进行身份验证,之后它将自动运行。

我只是想对西兰花修士说声谢谢,这正是我想要的。为了向像我这样的初学者澄清,我的最终批处理文件如下所示:

c:\python27\pythonw.exe "C:\Program Files (x86)\Google\google_appengine\appcfg.py" --oauth2 update "C:\Users\[username]\[directory]\app.yaml"

工作完美,希望此解决方案更高级。

也许您有理由部署,但有一个本地服务器带有SDK。我重新部署以处理实时数据。我是唯一一个使用该应用程序的人,因此我不会因为开发实时版本而冒太大风险。=)OT供参考:您可以使用python bulkloader工具将实时数据下载到开发服务器。它甚至可以与Java一起工作。我使用AutoIT,它工作得非常好。解决方案是:重新启动或几个小时不活动后,cookie会被清除。在我的一台计算机上,这是可行的,而在另一台计算机上,它不会。我找不到任何
.appcfg*
config files.Oops。顺便说一句,我使用的是2.6,到目前为止一切正常。@ZuzooVn请说得更具体些,你需要什么细节?你是我的英雄!“回声”部分是天才我很不安全。更安全的方法是启用双因素身份验证并使用:appcfg.py--oauth2\u refresh\u token=token update yourapp/I更改了答案,因为oauth(两年后)是当前首选的方法。Oauth+一个用于上传的bat文件非常有效。这个答案缺乏关于如何将Oauth与GAE一起使用的实用建议Oauth说明在章节中:您是一个初学者,所以我假设您已经对此进行了研究,但是是否有一个好的GAE公共演示项目,它不是非常过时,并且还包括用于上传的bat文件之类的内容?如果没有,我就做一个。