我试图在init中创建一个变量,但在同一类的其他方法中无法识别它。
我不知道为什么 self.myvarlol 在 send_myheaders() 中无法正常工作:S
代码:
from http.server import HTTPServer, BaseHTTPRequestHandler
import time
class myserveromg(BaseHTTPRequestHandler):
def __init__(self, a, b, c):
BaseHTTPRequestHandler.__init__(self, a, b, c)
self.myvarlol = "asdf"
self.date = self.date_time_string()
def send_my_headers(self):
self.send_header("Content-type", "text/html")
self.send_header("Date", self.date)
self.end_headers()
def do_GET(self):
self.send_response_only(200)
self.send_my_headers()
self.wfile.write(bytes("<html><head><title>Title goes here.</title></head>", "utf-8"))
self.wfile.write(bytes("<body><p>This is a test. </p>", "utf-8"))
self.wfile.write(bytes("<p>You accessed path: %s</p>" % self.path, "utf-8"))
self.wfile.write(bytes("</body></html>", "utf-8"))
if __name__ == "__main__":
hostName = "localhost"
hostPort = 9000
appPortal = myserveromg
myServer = HTTPServer((hostName, hostPort), appPortal)
try:
print(time.asctime(), "Server Starts - %s:%s" % (hostName, hostPort))
myServer.serve_forever()
except KeyboardInterrupt:
pass
myServer.server_close()
print(time.asctime(), "Server Stops - %s:%s" % (hostName, hostPort))
错误:
File "C:\Users\Anonym-PC\Desktop\nuseke.py", line 14, in send_my_headers
self.send_header("Date", self.date)
AttributeError: 'myserveromg' object has no attribute 'date'