У меня есть следующий код сервера. Он создает HTTP-сервер python.Python HTTP-сервер, в котором хранятся полученные сообщения
В настоящее время он получает только информацию, отправленную клиентом, но я хочу иметь возможность хранить все, что клиент отправляет на сервер.
Например, если клиент отправляет «Hello World», тогда на стороне сервера появляется «Hello World», но он отображает его только. Я хочу сохранить эту полученную строку в некоторой переменной.
Скажем ... string str, тогда, если я напечатаю str, тогда он печатает «Hello World».
Может ли кто-нибудь сказать мне, как это сделать?
import time
import BaseHTTPServer
HOST_NAME = '127.0.0.1' # !!!REMEMBER TO CHANGE THIS!!!
PORT_NUMBER = 8868 # Maybe set this to 9000.
class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
def do_HEAD(s):
s.send_response(200)
def do_GET(s):
"""Respond to a GET request."""
s.send_response(200)
if __name__ == '__main__':
server_class = BaseHTTPServer.HTTPServer
httpd = server_class((HOST_NAME, PORT_NUMBER), MyHandler)
print time.asctime(), "Server Starts - %s:%s" % (HOST_NAME, PORT_NUMBER)
try:
httpd.serve_forever()
except KeyboardInterrupt:
pass
httpd.server_close()
print time.asctime(), "Server Stops - %s:%s" % (HOST_NAME, PORT_NUMBER)
Всякий раз, когда я запускаю этот сервер и нажимаю кнопку для отправки материала на этот сервер, сервер отображает следующее.
Thu Oct 15 10:14:48 2015 Server Starts - 127.0.0.1:8882
127.0.0.1 - - [15/Oct/2015 10:14:52] "GET id=497&message=A%20typed%27char*%27 HTTP/1.1" 200 -
И я хочу иметь возможность хранить этот GET id = 497 blah blah для переменной внутри функции как строку.
возможно дубликат: http://stackoverflow.com/questions/4233218/python-basehttprequesthandler-post-variables – alexanderlukanin13
не дублируется. –