Django非关联和Google App Engine:远程API问题

2024-10-01 19:33:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在googleappengine上部署一个django nonrl应用程序。应用程序部署正常,但我无法登录到远程shell。在

这是我的应用程序yaml文件:

application: masnun
version: 1
runtime: python
api_version: 1

builtins:
- remote_api: on

inbound_services:
- warmup

handlers:
- url: /_ah/queue/deferred
  script: djangoappengine/deferred/handler.py
  login: admin

- url: /media/admin
  static_dir: django/contrib/admin/media
  expiration: '0'

- url: /.*
  script: djangoappengine/main/main.py

但我得到一个错误:

^{pr2}$

请帮帮我!在

更新:使用Python2.5时,出现以下错误:

DEBUG:google.appengine.tools.appengine_rpc:Got http error, this is try #3
DEBUG:google.appengine.tools.appengine_rpc:Sending HTTPS request:
GET /_ah/remote_api(/.*)? HTTPS/1.1
Host: masnun.appspot.com
X-appcfg-api-version: 1
Content-type: application/octet-stream
User-agent: Google-remote_api/1.0 Linux/2.6.35-25-generic Python/2.5.5.final.0

Tags: djangoapi应用程序urlremoteadminapplicationversion
3条回答

可以使用连接到远程shell

python manage.py remote shell

而且只有当你用谷歌账户认证创建了你的应用引擎应用。但是远程应用程序接口需要一个已部署的应用程序

^{pr2}$

失败,以上错误正常。在

尝试部署时会出现什么错误?在

问题在于

GET /_ah/remote_api(/.*)? HTTPS/1.1

如果您注意到,URL包含无效字符“(/.*)”快结束了。在

假设您使用的是django nonrl,这是一个很容易解决的问题。打开文件

djangoappengine/db/base.py

然后换线

^{pr2}$

^{3}$

这需要确保URL是正确的。在

加上这个应用程序yaml项目处理程序,第一节:


handlers:
- url: /remote_api
  script: $PYTHON_LIB/google/appengine/ext/remote_api/handler.py
  login: admin

再次部署。在

相关问题 更多 >

    热门问题