Python GAE-部署错误:";属性错误:can';t集属性";
当我尝试部署我的应用程序时,出现以下错误: Starting update of app: flyingbat123, version: 0-1 Getting current resource limits. Password for avigmati: Traceback (most recent call last): File "C:\Program Files (x86)\Google\google_appengine\appcfg.py", line 125, in run_file(__file__, globals()) File "C:\Program Files (x86)\Google\google_appengine\appcfg.py", line 121, in run_file execfile(script_path, globals_) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 4062, in main(sys.argv) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 4053, in main result = AppCfgApp(argv).Run() File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 2543, in Run self.action(self) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 3810, in __call__ return method() File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 3006, in Update self.UpdateVersion(rpcserver, self.basepath, appyaml) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 2995, in UpdateVersion self.options.max_size) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 2122, in DoUpload resource_limits = GetResourceLimits(self.rpcserver, self.config) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 355, in GetResourceLimits resource_limits.update(GetRemoteResourceLimits(rpcserver, config)) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appcfg.py", line 326, in GetRemoteResourceLimits version=config.version) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appengine_rpc.py", line 379, in Send self._Authenticate() File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appengine_rpc.py", line 437, in _Authenticate super(HttpRpcServer, self)._Authenticate() File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appengine_rpc.py", line 281, in _Authenticate auth_token = self._GetAuthToken(credentials[0], credentials[1]) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appengine_rpc.py", line 233, in _GetAuthToken e.headers, response_dict) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\appengine_rpc.py", line 94, in __init__ self.reason = args["Error"] AttributeError: can't set attribute 2012-04-25 19:30:15 (Process exited with code 1) 正在启动应用程序更新:flyingbat123,版本:0-1 获取当前资源限制。 avigmati密码:回溯(最近一次呼叫最后一次): 文件“C:\Program Files(x86)\Google\Google\u appengine\appcfg.py”,第125行,在 运行\u文件(\uuuu文件,globals()) 文件“C:\Program Files(x86)\Google\Google\u appengine\appcfg.py”,第121行,在run\u文件中 execfile(脚本路径,全局路径) 文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appcfg.py”,第4062行,在 主(系统argv) 文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appcfg.py”,主目录第4053行 结果=AppCfgApp(argv).Run() 文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appcfg.py”,第2543行,正在运行 自我行动(self) 文件“C:\Program Files(x86)\Google\Google\u appengine\Google\appengine\tools\appcfg.py”,第3810行,在调用中__ 返回方法() 更新中的文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appcfg.py”,第3006行 UpdateVersion(rpcserver、self.basepath、appyaml) UpdateVersion中的文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appcfg.py”,第2995行 self.options.max_size) 文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appcfg.py”,第2122行,双pload格式 resource_limits=GetResourceLimits(self.rpcserver,self.config) GetResourceLimits中的文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appcfg.py”,第355行 resource_limits.update(GetRemoteResourceLimits(rpcserver,config)) GetRemoteResourceLimits中的文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appcfg.py”,第326行 version=config.version) 文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appengine\U rpc.py”,第379行,在Send中 自我验证() 文件“C:\Program Files(x86)\Google\Google\u appengine\Google\appengine\tools\appengine\u rpc.py”,第437行,在 超级(HttpRpcServer,self)。\u Authenticate() 文件“C:\Program Files(x86)\Google\Google\u appengine\Google\appengine\tools\appengine\u rpc.py”,第281行,在 auth\u token=self.\u GetAuthToken(凭据[0],凭据[1]) 文件“C:\Program Files(x86)\Google\Google\U appengine\Google\appengine\tools\appengine\U rpc.py”,第233行,位于\U GetAuthToken中 e、 标题,响应(dict) 文件“C:\Program Files(x86)\Google\Google\u appengine\Google\appengine\tools\appengine\u rpc.py”,第94行,在\uu init中__ self.reason=args[“错误”] AttributeError:无法设置属性 2012-04-25 19:30:15(流程退出,代码为1) 以下是我的app.yaml: application: flyingbat123 version: 0-1 runtime: python api_version: 1 threadsafe: no 应用:flyingbat123 版本:0-1 运行时:python api_版本:1 线程安全:没有 这似乎是身份验证错误,但我正在输入有效的电子邮件和密码。Python GAE-部署错误:";属性错误:can';t集属性";,python,google-app-engine,deployment,Python,Google App Engine,Deployment,当我尝试部署我的应用程序时,出现以下错误: Starting update of app: flyingbat123, version: 0-1 Getting current resource limits. Password for avigmati: Traceback (most recent call last): File "C:\Program Files (x86)\Google\google_appengine\appcfg.py", line 125, in r
我做错了什么?错误消息表明我们的SDK中存在错误。由于此错误,您无法看到失败的原因。但是,只有当身份验证请求以403 HTTP错误结束时,才会调用此代码块 您可以临时调整文件C:\Program Files(x86)\Google\Google\u appengine\Google\appengine\tools\appengine\u rpc.py,如下所示,以查看实际原因(添加
logger.warn(正文)
line)
一旦你找到了原因,这个问题一定会更容易解决。在您解决问题后,如果您能在中创建有关此神秘错误消息的问题,我将不胜感激。我也遇到了同样的问题。
我对我的google帐户使用双因素身份验证,因此我以前必须输入特定于应用程序的密码才能将应用程序部署到GAE。如果我输入了正常的谷歌密码,我会得到
AttributeError:cannotsetattribute
错误。但是,当我创建并使用它时,它工作了我遇到了相同的问题,在插入logger.warn(body)之后,我得到了以下结果:
警告appengine\u rpc.py:231错误=BAD身份验证
Info=InvalidSecondFactor
标准错误消息可能会更有帮助,但这让我想知道是否不应该使用特定于应用程序的密码?将--oauth2标志添加到appcfg.py更新中,以便更轻松地进行修复我知道这并不能回答OP问题,但它可能会帮助其他在使用本问题中提到的
--oauth2
时遇到问题的人
我启用了两步验证,并且我一直在使用特定于应用程序的密码,但发现每天查找并粘贴长字符串很乏味。我发现使用--oauth2
返回
此应用程序不存在(app\u id=u'my-app-id')
但是通过添加--no_cookies
选项
appcfg.py--oauth2--no\u cookies更新我的应用文件夹\
现在,我每次都可以通过在打开的浏览器窗口中单击[允许访问]进行身份验证
我在Windows7上使用的是Python SDK 1.7.2
注意:我在别处找到了这个解决方案,但我不记得在哪里,所以我无法正确地将其归为属性。对不起
如果您的
默认\u错误
值与应用程序中的静态\u目录
重叠,也会发生这种情况。yaml
我创建了新的google appengine acc,并且成功上传了我的应用程序。但在旧帐户下,我仍然无法部署。可能您的旧帐户需要使用captcha解锁,请尝试卸载它。我确认这一点,我有2级身份验证,创建特定于应用程序的密码可以解决问题。+1。似乎是双因素身份验证(需要短信代码)阻止了它。按照建议生成特定于应用程序的密码后,我的应用程序成功上载。或者更好:使用新的--oauth2
选项。我现在已生成特定于应用程序的密码,然后它就可以工作了!当两步验证
except urllib2.HTTPError, e:
if e.code == 403:
body = e.read()
# Add a line bellow to see the actual error
logger.warn(body)
response_dict = dict(x.split("=", 1) for x in body.split("\n") if x)
raise ClientLoginError(req.get_full_url(), e.code, e.msg,
e.headers, response_dict)
else:
raise