phivh
4/13/2013 - 6:25 PM

Google’s authentication-less on-the-fly image resizing service

Google’s authentication-less on-the-fly image resizing service

# Google's authentication-less on-the-fly image resizing service

I found it while poking around the Google+ HTML.  Jotting down some notes felt
like a good idea, so here goes.  If you know more about this API, let me know,
please!

(Word of warning: I spent ~30 minutes on both my experimentation and this here
write-up, so it might not be the most thought-provoking, brilliant thing you
read today.)


## Base URL

`https://images1-focus-opensocial.googleusercontent.com/gadgets/proxy`


## Parameters:

* `url`: original image URL
* `container`: must be "focus" (i dunno lol)
* `refresh`: time (in seconds) to cache it on G's servers
* `resize_w`: width in pixels
* `resize_h`: height in pixels

You can either specify both `resize_*` parameters or just one.


## Examples

Let's resize [that big panorama picture I took in Istanbul last year][1].

Make it square, 300x300px:

    https://images1-focus-opensocial.googleusercontent.com/gadgets/proxy?url=https%3A%2F%2Fdl.dropboxusercontent.com%2Fu%2F7298%2Fblog%2FBlick_von_der_S%25C3%25BCleymaniye-Moschee.jpg&container=focus&resize_w=300&resize_h=300

Make it 750px wide and keep the aspect ration:

    https://images1-focus-opensocial.googleusercontent.com/gadgets/proxy?url=https%3A%2F%2Fdl.dropboxusercontent.com%2Fu%2F7298%2Fblog%2FBlick_von_der_S%25C3%25BCleymaniye-Moschee.jpg&container=focus&resize_w=750


## Quirks

At least in Chrome, opening the URL in the browser will force a download of a text file (which is actually a JPG).  Putting the URL in an `<img>` tag is fine.  Or just use `curl`.



[1]: https://dl.dropboxusercontent.com/u/7298/blog/Blick_von_der_S%C3%BCleymaniye-Moschee.jpg