Problem reading channel. HTTP error code -304
13 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
when i want to read data from thingspeak, i get the below messege :
Problem reading channel. HTTP error code -304
how can i solve this?
2 comentarios
Vinod
el 8 de Sept. de 2020
How are you reading the data from your ThingSpeak channel?
- A HTML page using the ThingSpeak API and Javascript?
- MATLAB code using thingSpeakRead?
- From an embedded device?
- Something else?
Respuestas (2)
Christopher Stapels
el 8 de Sept. de 2020
Movida: Christopher Stapels
el 5 de En. de 2024
The negative errors are from the communication library, not standard HTTP responses. From the ThingSpeak communication library readme, -304 is Timeout waiting for server to respond. This seems to either be a network issue, or you are sending an incomplete message to ThingSpeak. Are you using one of the standard examples form the library or your own code?
0 comentarios
Niels
el 18 de Feb. de 2025
The same problem appeared here when accessing a university server, except I was writing not reading a field. I solved this by trying to write the field up to 10 times during 5 seconds. Now I always get a success with error code 200. I guess the same idea would work for reading a field. Why it works, I've got no clue.
int returnCode;
for (int i=0; i<10; ++i) {
returnCode = ThingSpeak.writeField(channelId, field, value, pw);
if (returnCode == 200) break;
delay(500);
}
Serial.println("writeField " + String(field) + " " + String(value,2) + " " + String(returnCode));
2 comentarios
Vinod
el 18 de Feb. de 2025
The suggestion I would make is to apply some sort of (exponential?) backoff to the delay in the loop. You don't want to inadvertantly trigger a DoS attack from your device. A simple backoff might be:
delay(500 + i*(i+100));
Niels
el 19 de Feb. de 2025
That's neat, thanks. The danger of triggering a DoS attack detector did not occur to me. Thinking more about the problem, I guess that the university IoT server has gotten quite busy due to a proliferation of connected things. So, every time that I try to connect through it to ThingSpeak, there is a probability of it being busy and denying my request. Then, it is simply a matter of trying repeatedly until by chance I get through.
Comunidades de usuarios
Más respuestas en ThingSpeak Community
Ver también
Categorías
Más información sobre Read Data from Channel en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!