3 ms·
I don't understand why the apps in question (Apollo etc) care about the Reddit API and its terms at all. Those apps are basically browsers. Applications to bro
by MrThoughtful 3y ago
I don't understand why the apps in question (Apollo etc) care about the Reddit API and its terms at all.
Those apps are basically browsers. Applications to browse Reddit, right?
Why not use the "html over http" API which every other browser also uses?
Yes, you would have to harden the code a bit so it gracefully deals with the structure of the html changing sometimes. And you would have to update the parser from time to time. But is that such a big problem?
Also: When using the API, how is the free API limit not enough? In TFA it says "100 queries per minute per OAuth client id". That is per user, right? Why does it take more than 100 API requests per minute to use reddit?
- patwolfe 3y agoI think you are vastly underestimating the complexity and inefficiency of doing this for one of the most visited websites in the world.
- MrThoughtful 3y agoHow is the complexity of parsing html related to how much visits the website has?
- Timon3 3y agoIf Reddit doesn't want third party apps, just how long do you think the HTML will stay consistent?
- simlevesque 3y agoThe html can change at any time, breaking things. An API must manage breaking changes.
- jaywalk 3y ago> Those apps are basically browsers. Nope, not even close.
- MrThoughtful 3y agoI don't mean web browsers. I mean Reddit browsers. Applications users use to browse Reddit.
- jchw 3y agoSomething changes one day, and then your app is broken until you update it, causing you to need to rush to fix it, especially if your app has paying customers. This could be a massive, sudden change of any kind since you are effectively an adversary. Bad. You are behind a firewall designed to cut out bots, and now need to bypass or handle anti-bot CAPTCHA. Again, bad. You want to provide push notifications, but that requires background polling on a server. Yep, that's pretty bad, since it multiplies the effort AND erases the "basically just a browser" part in one swoop. Now you need to probably pass user credentials to your backend (bad) and scrape on the server, bypassing Cloudflare/etc in a headless manner (bad.) Reddit shuts down old.reddit.com and cuts off access to NSFW and "edgy" or perhaps just small subreddits except when logged in on official apps. Now you need to scrape from either official iOS/Android APIs where the keys could go invalid at any time, or the JS desktop site which is all JS and XHRs everywhere. The only way to make your app truly behave like the real thing is to carefully set up an actual browser engine and hide evidence that you're using automation, which is a lot harder than you might imagine. Yep, you guessed it. Very, very bad. For that last thing, Twitch's "integrity check" mechanism is a great illustration of just how user hostile things will quickly become. Twitch integrity check won't even pass for real browsers half the time. It hates Linux users. This is the future you get.
- detaro 3y ago> In TFA it says "100 queries per minute per OAuth client id". That is per user, right? No, it's per app.