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: by jose
