我有一個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