Sunday, February 25, 2007

"We make it easier to work with Yahoo’s services than Yahoo does." That is what Alex believes as he announces that Dojo supports Yahoo! Pipes, which adds to the forward-thinking JSON-P style endpoints.



It’s cool and interesting to be able to call out to Pipes from your server-side web-app, but what the mashup-mad word REALLY needs is to be able to do the same thing from a browser. Despite not really being in the docs anywhere, Yahoo’s Kent Brewster points out that Pipes supports a JSON-P callback argument. Awesome!


The structure of Pipes URLs are different than every other Yahoo service (much like flickr. ugg.), so there’s no Dojo RPC for it yet, but you can easily query a pipe using dojo.io.bind and the ScriptSrcIO transport:



JAVASCRIPT:





  1.  



  2. // get news results for Cometd



  3. dojo.require("dojo.io.ScriptSrcIO"); // the x-domain magic



  4. dojo.require("dojo.debug.console"); // firebug integration



  5. dojo.io.bind({



  6.   // grab this URL from the pipe you're interested in



  7.   url: "http://pipes.yahoo.com/pipes/fELaGmGz2xGtBTC3qe5lkA/run",



  8.   mimetype: "text/json",



  9.   transport: "ScriptSrcTransport",



  10.   jsonParamName: "callback”, // aha!



  11.   content: {



  12.     “render”: “json”,



  13.     “textinput1″: “cometd”



  14.   },



  15.   load: function(type, data, evt){



  16.      // log the response out to the Firebug console



  17.      dojo.require(”dojo.json”);



  18.      dojo.debug(dojo.json.serialize(arguments));



  19.   }



  20. });









No comments:

Post a Comment