我有一个appengine webapp,我需要设置HTTP位置变量以重定向到同一webapp中的另一个页面。为此,我需要制作一个绝对的链接。为便携性原因,我不能直接使用我目前使用的域名。如何获取域名,其中包含一个appengine/python网站
是否有可能在python代码中生成webapp托管的域名。
我有一个appengine webapp,我需要设置HTTP位置变量以重定向到同一webapp中的另一个页面。为此,我需要制作一个绝对的链接。为便携性原因,我不能直接使用我目前使用的域名。如何获取域名,其中包含一个appengine/python网站
是否有可能在python代码中生成webapp托管的域名。
我不认为我完全理解需要getdomain名称。但看看谷歌应用程序引擎提供的重定向API是否可以完成这项工作。 http://code.google.com/appengine/docs/python/tools/webapp/redirects.html
如果您使用的是webapp框架,则当前URL位于self.request.url
。各种组件在self.request属性中被分解,记录在here中。
这个问题回答不好。您需要使用域名来生成如下网页:robots.txt,sitemap.xml以及许多其他非相关链接的内容。使用这个我用尽:
from google.appengine.api.app_identity import get_default_version_hostname
host = get_default_version_hostname()
但是......当你升级到你自己的域名......因为我仍然得到appspot.com名字这是不好的。
如果您的应用程序使用custom domain name,然后get_default_version_hostname()将返回myapp.appspot.com,或1.default.myapp.appspot.com不mydomain.com
要在请求获得域名,使用方法:
hostname = self.request.host
按照webob docs:
返回“主机名HTTP_HOST提供,跌落回 SERVER_NAME”
这不会一个cron任务中或者如果客户要求myapp.appspot.com的工作,而不是mydomain.com。
参见问题:https://code.google.com/p/googleappengine/issues/detail?id=11993 get_default_version_hostname()将不会在里面工作/ _ah /开始管理VM处理。解决方法是设置: os.environ ['DEFAULT_VERSION_HOSTNAME'] = os.environ ['GAE_APPENGINE_HOSTNAME']
谢谢!它帮助.. :) – 2010-10-16 06:32:32
你需要得到的情况下,你会在电子邮件中使用它。你将如何使用电子邮件中的相关网址? – Neelesh 2011-06-15 15:48:20