top | item 31438989

HTTP Cats

427 points| peterkos | 3 years ago |http.cat

63 comments

order
[+] xyzal|3 years ago|reply
Slightly superior version: https://http.dog/
[+] gtirloni|3 years ago|reply
The interesting thing is that .dog os one of the new TLDs anyone can register while .cat is exclusive to Catalans. Typical of cats.
[+] boardwaalk|3 years ago|reply
That was significantly less funny, I think :(. Regardless of cat vs dog. More just funny dog pictures than ones connected to the status codes.
[+] drdaeman|3 years ago|reply
> superior

They probably told you on the Internet, nobody knows you're a dog? See, that was a lie. :)

j/k

[+] CSSer|3 years ago|reply
They support .jxl! <3 I’m so psyched to see this out in the wild
[+] corderop|3 years ago|reply
402 payment required XD
[+] rpastuszak|3 years ago|reply
I don’t know what is says about me as a software engineer, but that site is the first place I visit to look up more obscure statuses.
[+] nkrisc|3 years ago|reply
I do the same. It’s easy to remember, to the point, and no fluff. Ok, there’s lots of fluff.
[+] corrral|3 years ago|reply
I always "!wiki http status codes", but I think I like your way better. May start doing that.
[+] noneeeed|3 years ago|reply
Reminds me of my most customer-visible screwup.

- Implement rate limiting on a site to deal with scrapers

- Include the https://http.cat/429 in the template for 429 responses.

- Time passes

- Implement API for displaying an information widget in customer company’s own website (big pharma regent suppliers), content get injected as an iframe loaded from our site.

- Customer employees all visit their own website from behind a reverse proxy with the same IP, trigger the (poorly configured) rate limiting

- Panicky customer contact: “Why is your widget displaying cat pictures on our website and could you please stop it right now”

This now forms a key foundation in my “no whimsy in code” rule along with one or two near misses with dummy data/content.

[+] CSSer|3 years ago|reply
One of my coworkers, a UX designer, used to work at a newspaper. They used Osama Bin Laden’s FBI most wanted photo as a placeholder image to avoid accidentally running prints without photos because it was funny and because, you know, who could miss that? Well, everyone, it turns out. Some poor guy got Osama’s photo in his obituary and that was the end of that.
[+] dinkleberg|3 years ago|reply
Not saying I’d ever actually use this (though also not saying I wouldn’t lol), but what is the best practice for using external sources like this?

When using something like Unsplash I know they’ve got lots of resources and a good setup so calling out to their API seems safe enough.

But for a random service like this, I have no idea if they have the infrastructure to support a lot of calls. I don’t want to abuse a random service.

In this case I assume it is all behind a cdn and it’s no big deal for them.

But if you’re not sure and it turns out to be an important part of what you’re building, do you just setup your own cached version using varnish or something?

[+] henryfjordan|3 years ago|reply
The instructions at the top of the page encourage you to hot-link directly to the images they host. It would be hard to say sending them a ton of traffic is "abuse" when they literally suggest you do that.

In general though hot-linking across domains like that is bad practice because the content on the other domain might change in a way you don't like. This was a pretty common practice for a while: https://tvtropes.org/pmwiki/pmwiki.php/Main/HotlinkedImageSw...

If those images turn out to be important to your project such that http.cats going down would be an issue, absolutely you should serve a copy of that content from your servers (assuming all the copyright licenses are in order).

[+] suprfsat|3 years ago|reply
Is Cloudflare capable of serving 67 jpegs?
[+] turtlebits|3 years ago|reply
These all return 200s for me. Or am I missing the joke?
[+] beardog|3 years ago|reply
It's because 200 is correct if you are getting the correct image. I believe you're meant to hotlink the images in an HTML error page when your site returns the given code.
[+] cheschire|3 years ago|reply
416, the joke was out of your humor range.
[+] hirundo|3 years ago|reply
The guy in 451 is noted cat fancier Ray Bradbury. I couldn't find the cat's name.
[+] bjconlan|3 years ago|reply
Thanks! I was trying to work out who this was and their relevance in the picture. I thought perhaps it was something 'Darker' than a Fahrenheit 451 ref.

I feel an obligatory 'Joe Exotic' reference should be considered here (but goes against the housecat vibe)

[+] gwbas1c|3 years ago|reply
Thanks, I knew there was more to that picture that I could see.
[+] nescioquid|3 years ago|reply
I totally didn't get that gag! Thanks for the hint!
[+] ufo|3 years ago|reply
I started by scrolling straight to 418, to see how they handled that one.
[+] warpech|3 years ago|reply
Same here, it did not dissapoint!
[+] coopreme|3 years ago|reply
I hope this app is catainerized
[+] AnimalMuppet|3 years ago|reply
If not, it could be catastrophic.
[+] Sohcahtoa82|3 years ago|reply
I've had an idea for a Python web app framework (because that's what Python needs, another web framework), maybe I'll have a "use_cats" option to automatically use these with status codes.
[+] userbinator|3 years ago|reply
Given the precedent of netcat, I wasn't sure whether to expect the animal or the tool.

414 definitely brought back some memories...

[+] productceo|3 years ago|reply
Thank you. I am finally empowered to build the API I've been planning to build for years!
[+] throwaway290|3 years ago|reply
I don't get the cat for HTTP 308. (The rest are hilarious.)
[+] callmeed|3 years ago|reply
I wish the response status actually matched the request
[+] glerk|3 years ago|reply
TIL HTTP code 420 is a thing.
[+] Spoom|3 years ago|reply
It was invented by Twitter as a code for "you're exceeding our rate limits" and just sorta stuck.

Less cool companies use 429.