2 ms·
Yesterday I found that twitter wasn't working for my simplified posting interface and example node.js application https://justtweet.herokuapp.com/ https://justt
by benatkin 14y ago
Yesterday I found that twitter wasn't working for my simplified posting interface and example node.js application https://justtweet.herokuapp.com/ https://justtweet.herokuapp.com/ so I set out to fix it. The first thing I did was add logging of the error. When I tried pushing it back to Heroku I found that something else broke, because I didn't specify versions for my dependencies in my package.json and it got newer versions with a slightly different API. When I got it working I had refactored my code and changed the API url to https and to specify the version number as 1.1. Thanks to Dave's work note I found out why:
> "All non-versioned API endpoints, such as http://twitter.com/statuses/user_timeline http://twitter.com/statuses/user_timeline, will cease functioning."
http://worknotes.scripting.com/october2012/101112ByDw/unbreakingOurTwitter http://worknotes.scripting.com/october2012/101112ByDw/unbrea...
Mine was api.twitter.com without a version, not twitter.com.
https://github.com/resources/justtweet.herokuapp.com/commit/100dda50a34a51455e6cad553e07a28e66723646#commitcomment-1981403 https://github.com/resources/justtweet.herokuapp.com/commit/...
I see why they felt the need to break twitter.com to simplify their deployment but I don't see why they thought it made sense to break api.twitter.com urls without a version number.
- abraham 14y agoIt isn't just deployment. Every version requires extra code paths for developers to maintain.
- benatkin 14y agoI didn't mean to say that it would be effortless. What I'm saying is that having the API on twitter.com can complicate twitter's web app, which should ideally be a separate service from their API. That might be a change worth making, even if it caused problems for some API users. I don't think keeping a non-versioned url at api.twitter.com would complicate things enough to justify turning it off, unless they didn't care about small API users.