<下面<大的更新意味着它只是一个记录问题>>应用程序引擎Python安装
我试图让应用程序引擎安装Python和有一些问题,我怀疑是一些简单的步骤,我已经错过了。我app.yaml中这样说:
application: something #name here is the one I used to register i.e. something.appspot.com
version: 1
runtime: python
api_version: 1
handlers:
- url: .*
script: myapp.py
和我myapp.py这样说:
import cgi
import Utils
import Sample
import logging
from google.appengine.api import users
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
from google.appengine.ext import db
class MainPage(webapp.RequestHandler):
def get(self):
self.response.out.write('<html><body>')
self.response.out.write('Welcome to my server! Why is this not working?')
self.response.out.write('</body></html>')
def main():
application = webapp.WSGIApplication([('/', MainPage),
('/Sample', Sample.HttpRequestHandler)],
debug=True)
run_wsgi_app(application)
if __name__ == "__main__":
main()
当我在本地主机上运行此,我得到我的HTML“欢迎”消息传递时,/但是当我通过/样本我没有得到任何地方。另外,我似乎无法记录消息。我打电话logging.debug()并没有在日志控制台上显示。有任何想法吗?这是我的Sample.py。对不起,这个奇怪的标签。复制粘贴并没有排列起来,手动编辑它似乎没有纠正它。
class HttpRequestHandler(webapp.RequestHandler):
def get(self):
Utils.log("Sample handler called")
try:
if HttpRequestHandler.requestIsValid(self):
intParam = int(self.request.get('param1'))
floatParam = float(self.request.get('param1'))
stringParam = self.request.get('param1')
Utils.log("params: " + str(intParam) + " " + str(floatParam) + " " + stringParam)
if intParam == 1:
self.response.set_status(200, message="Success")
else:
self.response.set_status(400, message="Error processing sample command")
else:
raise StandardError
except Exception, e:
logging.debug("Exception: %s" % (e))
self.response.set_status(400, message="Error processing sample command")
def requestIsValid(self):
if self.request.get('param1') != "" and \
self.request.get('param2') != "" and \
self.request.get('param3') != "":
return True
else:
return False
所以我知道这完全是跛脚的,但因为我看不到任何日志消息,我在一堆的“养StandardError的”扔调用只是为了看看会抛出异常输出到我的浏览器窗口时我尝试调用我的Sample消息。我发现服务器正在调用Sample处理程序,看起来好像甚至检查int param是否正确。
我认为问题是我只是看不到我的日志消息!任何想法为什么他们没有显示出来?我通过这些Util.log()调用调用logging.debug()。是否有一些标志或东西抑制了我的输出显示在日志控制台中?
Sample.HttpRequestHandler是什么样的? – Cameron 2010-11-07 19:03:50