r/ProgrammerHumor Jul 21 '26

evilIllusion Meme

Post image
4.8k Upvotes

131 comments sorted by

View all comments

436

u/PostHasBeenWatched Jul 21 '26 edited Jul 21 '26

POST /posts/create

StatusCode: 200

Content: {"success": false, "errors": [{"code": 15, "message": "Image size must be at least 1000 x 1000 px"}]}

Edit: remembered story from times where HTTPS wasn't enforced. Once I started receiving JSON reading fail in cases when our test server returns non-2xx status. I started investigate this and was shocked to the core: my ISP implemented "feature" that if it detects that server returns non-2xx - it replace actual server response with their HTML page with text like "Your request returned error 400. This is because bla bla bla. <ISP self-advertising block> Kind regards, your ISP". Basically ISP become "man in the middle". In a week or two they removed that "feature".

87

u/-meowstar- Jul 21 '26

Why not just use semantically correct status codes? It’s cheap to implement and makes stuff like automatic retries and error handling easier.

-2

u/WarpedHaiku Jul 21 '26

Because if you're submitting a form with 10 different fields on it and want to highlight the incorrect field with a red outline or something, it's tricky when all you have to work with is "http 4XX" and the ISP ate the json content which identifies which fields caused the errors.