In this example, the Flickr Recent Photos YQL table is used to pull in a small set of recent Flickr images every 8 seconds.
The easiest way to build a YQL query is by visiting the YQL Console. In this example we will be using the flickr.photos.recent
table. The YQL
statement that we are using looks like this:
select * from flickr.photos.recent where (api_key = "1895311ec0d2e23431a6407f3e8dffcc")
Now we need to create our YUI instance and tell it to load the yql
and node
modules.
YUI().use('node', 'yql');
Now that we have a YUI instance with the yql
module, we can now make a query.
YUI().use('node', 'yql', function(Y) { var res = Y.one('#res'), count = 0, url = '<a href="http://flickr.com/photos/{owner}/{id}"><img src="http://static.flickr.com/{server}/{id}_{secret}_t.jpg"></a>'; var q = Y.YQL('select * from flickr.photos.recent where (api_key = "1895311ec0d2e23431a6407f3e8dffcc")', { //Tell JSONP to not cache this request so we get new images on each request allowCache: false, on: { success: function(r) { count++; res.setHTML('<h2>Recent Flickr Photos <em>(query #' + count + ')</em></h2>'); Y.each(r.query.results.photo, function(v) { res.append(Y.Lang.sub(url, v)); }); }, failure: function() { res.setHTML('YQL is down at the moment. Please <a href="?mock=true">try this example with mocked data</a>.'); } } }); Y.later(8000, q, q.send, null, true); });