我正在浏览Udacity网络编程教程(https://www.udacity.com/wiki/cs253/unit_2#submitting-input)。
在Google App Engine中,我们有一个名为main.py的文件。
以下是非常基本的" main.py"
的代码import webapp2
form = """
<form action="http://www.google.com/search">
<input name="q">
<input type="submit">
</form>
"""
class MainPage(webapp2.RequestHandler):
def get(self):
#self.response.headers['Content-Type'] = 'text/plain'
self.response.out.write(form)
app = webapp2.WSGIApplication([('/', MainPage)],
debug=True)
我正在查看webapp2源代码(https://code.google.com/p/webapp-improved/source/browse/webapp2.py)并发现RequestHandler类中的get()方法尚未定义。
源代码中的哪个位置表示定义处理程序的get(self)方法是必要的?我知道我无法理解GAE的所有细节,但很高兴看到它的具体位置。
答案 0 :(得分:2)
定义get方法是不。只有在你想要提供HTTP GET请求时才需要它。
检查此行,获取对该方法的引用对应于http请求 https://code.google.com/p/webapp-improved/source/browse/webapp2.py#555
这条线正在呼唤它 https://code.google.com/p/webapp-improved/source/browse/webapp2.py#570
因此,如果你有get方法并且有get请求,第555行的方法将指向你定义的get函数,第570行将调用它。