informatica:arduino:esp32:cronometro
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
informatica:arduino:esp32:cronometro [2023/04/17 22:12] – jose | informatica:arduino:esp32:cronometro [2023/04/17 23:14] (current) – jose | ||
---|---|---|---|
Line 218: | Line 218: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | ====== Webserver ====== | ||
+ | < | ||
+ | from http.server import BaseHTTPRequestHandler, | ||
+ | from urllib.parse import urlparse, parse_qs | ||
+ | from datetime import datetime | ||
+ | |||
+ | class MiServidor(BaseHTTPRequestHandler): | ||
+ | | ||
+ | def do_GET(self): | ||
+ | # Parsear la URL para obtener los parámetros | ||
+ | url = urlparse(self.path) | ||
+ | params = parse_qs(url.query) | ||
+ | | ||
+ | # Obtener el valor de la variable | ||
+ | variable = params.get(' | ||
+ | if variable is not None: | ||
+ | variable = variable[0] | ||
+ | | ||
+ | # Obtener la fecha actual en el formato deseado | ||
+ | fecha_actual = datetime.now().strftime(' | ||
+ | | ||
+ | # Guardar la fecha y el valor de la variable en el archivo | ||
+ | with open(' | ||
+ | archivo.write(f" | ||
+ | | ||
+ | # Responder con un código 200 | ||
+ | self.send_response(200) | ||
+ | self.end_headers() | ||
+ | | ||
+ | return | ||
+ | |||
+ | # Si no se especifica la variable, responder con un código 400 | ||
+ | self.send_response(400) | ||
+ | self.end_headers() | ||
+ | |||
+ | def iniciar_servidor(): | ||
+ | servidor = HTTPServer((' | ||
+ | print(' | ||
+ | servidor.serve_forever() | ||
+ | |||
+ | if __name__ == ' | ||
+ | iniciar_servidor() | ||
+ | </ | ||
+ | |||
+ | Se hace una petición: | ||
+ | curl localhost: | ||
informatica/arduino/esp32/cronometro.1681769534.txt.gz · Last modified: 2023/04/17 22:12 by jose