2010-02-24 37 views
2

我有一个程序(simple web server),我试图理解。有一个叫MyHandler的类。在这个类中我们定义了2个方法do_GET和do_POST。如何在Python中激活(执行)类的方法?

我不明白几件事情:

  1. 我们在哪里使用上述两种定义的方法?我期望看到类似objectname.do_GET()和objectname.do_POST()的东西,但我没有看到这样的事情。

  2. 在哪一点我们实例化类?我们是否使用整个类(不是类的实例)作为HTTPServer的参数?

  3. 为什么我们要在类的定义中指定参数(BaseHTTPRequestHandler)然后不使用它?

回答

4

我对Python很陌生,但我会在答案上有所作为,这可能会帮助我学习!

  1. 我们永远不要叫我们的代码do_GET()do_POST()方法,这是自动由HTTPServer类实例时GET和POST请求是由完成(见第2点)。

  2. HTTPServer将为每个创建的HTTP请求创建一个MyHandler类的实例。

  3. BaseHTTPRequestHandler不是一个参数:它指定了我们MyHandler类的子类BaseHTTPRequestHandler

希望这有助于!