2017-10-18 2 views
0

ist hier mein Code Ich möchte einen Server auf dem localhost: 8080 öffnen.Ausnahme während der Verarbeitung der Anfrage von

Und wenn ich den Server geöffnet habe, soll ich eine weiße Webseite mit dem Wort "Hallo!" schrieb darauf.

Aber wenn ich die Seite öffnen habe ich eine weiße Seite und auf meinem Terminal ich habe dies:

Exception happened during processing of request from ('10.0.2.2',49701) 
Traceback (most recent call last): 
    File "/usr/lib/python3.5/socketserver.py", line 313, in 
_handle_request_noblock 
    self.process_request(request, client_address) 
    File "/usr/lib/python3.5/socketserver.py", line 341, in 
process_request 
    self.finish_request(request, client_address) 
    File "/usr/lib/python3.5/socketserver.py", line 354, in 
finish_request 
    self.RequestHandlerClass(request, client_address, self) 
    File "/usr/lib/python3.5/socketserver.py", line 681, in __init__ 
    self.handle() 
    File "/usr/lib/python3.5/http/server.py", line 422, in handle 
    self.handle_one_request() 
    File "/usr/lib/python3.5/http/server.py", line 410, in 
handle_one_request 
    method() 
    File "webserver.py", line 14, in do_GET 
    self.wfile.write(message) 
    File "/usr/lib/python3.5/socket.py", line 593, in write 
    return self._sock.send(b) 
TypeError: a bytes-like object is required, not 'str' 
+0

Ich habe noch nie Server etwas beteiligt Web getan mit Python, aber was Sie sehen können, rufen Sie eine Ihrer Methoden mit dem falschen Parameter Typ – WhatsThePoint

Antwort

0

Ausgabe ist mit dieser self.wfile.write(message) Linie

from http.server import BaseHTTPRequestHandler, HTTPServer 
class WebServerHandler(BaseHTTPRequestHandler): 

def do_GET(self): 
    try: 
     if self.path.endswith("/hi"): 
      self.send_response(200) 
      self.send_header('Content-type', 'text/html') 
      self.end_headers() 
      message = "" 
      message += "<html><body>Hello!</body></html>" 
      self.wfile.write(message.encode('utf-8')) 
      print (message) 
      return 
    except IOError: 
     self.send_error(404, 'File Not Found: %s' % self.path) 


def main(): 
    try: 
     port = 8080 
     server = HTTPServer(('', port), WebServerHandler) 
     print ("Web Server running on port %s" % port) 

     server.serve_forever() 
    except KeyboardInterrupt: 
     print (" ^C entered, stopping web server....") 
     server.socket.close() 

if __name__ == '__main__': 
    main() 
+0

Perfect it löst es! Vielen Dank ! –

Verwandte Themen