🤔 The server spits out html when it cannot reach the backend. So one could argue it’s a configuration issue because the admin didn’t provide enough capacity / didn’t set up a proper generic json error for backend failures.
FWIW, Liftoff doesn’t handle these super gracefully either.
At any rate I think it’s kinda awesome that we get to witness these kinds of infancy problems.
No, this is a lemmy issue. The API specification specifies a JSON response, and the server randomly provides HTML, this is a bug in the server. I agree that Jebora should retry in the case of a network failure (timeout, 4xx staus codes…) but it should not have to retry in a case of a server that is not folowing the standard.
Serious Answer: This is a Jerboa issue. Lemmy is written in Rust. The error message is a Java error which is what native Android apps use.
I think it’s both, actually. Lemmy is often giving html where json is expected, and Jerboa isn’t handling the error well.
🤔 The server spits out html when it cannot reach the backend. So one could argue it’s a configuration issue because the admin didn’t provide enough capacity / didn’t set up a proper generic json error for backend failures.
FWIW, Liftoff doesn’t handle these super gracefully either.
At any rate I think it’s kinda awesome that we get to witness these kinds of infancy problems.
Well, what should Jerboa do? Pretend it received content?
It should display a human-readable error message instead of the raw one.
Take it as an error, tell the user about it and then retry with exponential back-off.
No, it’s probably when the app is expecting a json but the server returns an html, which usually happens in case of 502 errors.
No, this is a lemmy issue. The API specification specifies a JSON response, and the server randomly provides HTML, this is a bug in the server. I agree that Jebora should retry in the case of a network failure (timeout, 4xx staus codes…) but it should not have to retry in a case of a server that is not folowing the standard.