rainbows for 3rd party api

Giovanni Lion giovanni.lion at gmail.com
Thu Nov 5 08:03:12 EST 2009

> Hi Giovanni,
> 3rd party API responses are exactly one of the uses Rainbows! was built
> for.
> You really only want DevFdResponse if you're doing a straight proxy
> between the 3rd party and your client without modifying the data.  Since
> you seem to be getting XML and rendering HTML, you probably can't use
> DevFdResponse efficiently.  Don't despair, though, Rainbows! still
> gives you plenty of options :)
> You can build a Rack config.ru to use with Rails, too. In fact, you'll
> have to for now since we're unsure if we want to support a
> "rainbows_rails" wrapper like I do with "unicorn_rails".  Using
> config.ru gives you much more flexibility to route around/outside
> of Rails.

Ok i think i got most of it. Now i was just thinking about the best
way to get this going. The issue now is that processing the xml into
the html is something I prefer keeping insde the app for consistency.
My idea was to do something like this, i use an example this time:

1) I get a request for a friend list html partial
2) I intercept it and using revactor
3) Wait for the response (It shouldn't be called waiting with revactor
and fibers, right?)
4) I write the response to memcached
5) I call the rails app who now fetches from cache the friend list
6) The rails app renders the partial and everybody is happy

Do you think this is a good flow? Should I create a specific method instead?

Also, another issue is not clear to me yet. I need to make api
requests with oauth, hence there is a logic layer on top of the http
request. I would probably need to brake it down and replace Net:HTTP
with Revactor::HttpClient, am i correct?

Thanks for your help


More information about the rainbows-talk mailing list