POST-Request JSON Format - Fehlermeldung

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
simonW
User
Beiträge: 6
Registriert: Freitag 10. September 2021, 11:30

Hi zusammen,
eine kurze Zusammenfassung der Gegebenheiten:
Ich habe einen ESP32, welche Sensordaten einliest und an einen Server schicken soll. Programmiert habe ich mit Micropython (also quasi Python :D ) in Thonny.
Die Daten sollen mittels eines Post-Requests mit einem JSON im Body (Format {"value": wert}) gesendet werden. In meinen Tests, durchgeführt mittels Einmaldurchlauf, dann stoppen des Programms und dann Neustart hat es funktioniert.
Nun aber das Problem: Wenn ich den Code mehrmals hintereinander (ob mit mehreren Daten, wie Temperatur und Feuchtigkeit oder nur Temperatur im Loop) senden möchte funktioniert das nur beim ersten Mal danach kommt die Fehlermeldung: "OSError: [Errno 12] ENOMEM". Das liegt anscheinend irgendwie am vollen RAM, aber wenn ich den abfrage, scheint Platz zu sein. Ebenfalls bringen Befehle zum "Platzschaffen" (unten auskommentiert) nichts...
Muss ich das request oder temp_data vor dem erneuten Beschreiben irgendwie vorbereiten, leeren oder so? Bin leider kein Fachmann auf dem Gebiet.
Hier die Schleife, wie gesagt der einmalige Testdurchlauf ohne Schleife hat funktioniert.

Code: Alles auswählen

while True:
        url = ""
        temp = 123456.789 #zum Testen
        temp_data = { "value": temp}
        
        r = urequests.post(url, json=temp_data) 
        
        #del temp_data
        #del temp
        #del json
        #del url
        #gc.collect()
        time.sleep(1)
Danke schonmal!
Beste Grüße, Simon
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Man muss wohl das response schließen wird behauptet. Also r.close()
simonW
User
Beiträge: 6
Registriert: Freitag 10. September 2021, 11:30

__deets__ hat geschrieben: Freitag 10. September 2021, 12:29 Man muss wohl das response schließen wird behauptet. Also r.close()
MEGA! Es geht :idea: Danke dir für die superschnelle Hilfe! :mrgreen:
Antworten