4. Open applications are applications that run on the Yahoo! network: Yahoo! Homepage and My Yahoo! OAuth applications are standalone applications the run off the Yahoo! network.
25. Collecting User Data With OpenSocial 0.8 /* OpenSocial PERSON data request */ var req = opensocial.newDataRequest(); var params = {}; params[opensocial.DataRequest.PeopleRequestFields.PROFILE_DETAILS] = [ opensocial.Person.Field.NAME, opensocial.Person.Field.THUMBNAIL_URL ]; req.add(req.newFetchPersonRequest('VIEWER', params), 'viewer_profile'); req.send(response);
26. Collecting User Data With OpenSocial 0.8 /* response handler */ function response(data){ var viewer = data.get('viewer_profile').getData(); var aboutme = viewer.getField(opensocial.Person.Field.NAME); }
34. Getting Updates With OpenSocial 0.8 var req = opensocial.newDataRequest(); var spec = new opensocial.IdSpec(); spec.setField(opensocial.IdSpec.Field.USER_ID, opensocial.IdSpec.PersonId.OWNER); req.add(req.newFetchActivitiesRequest(spec), 'ownerActivities'); req.send(handleActivities);
35. Getting Updates With OpenSocial 0.8 function handleActivities(dataResponse) { var ownerActivities = dataResponse.get('ownerActivities').getData(); //parse owner activities }
41. Fetching Connections With OpenSocial 0.8 /* get owner and owner friends */ var idspec = opensocial.newIdSpec({ 'userId' : 'OWNER', 'groupId' : 'FRIENDS' }); var req = opensocial.newDataRequest(); req.add(req.newFetchPersonRequest('OWNER'), 'get_owner'); req.add(req.newFetchPeopleRequest(idspec), 'get_friends'); req.send(responseFriends);
42. Fetching Connections With OpenSocial 0.8 /* connection response function */ function responseFriends(data){ var owner = data.get('get_owner').getData(); var objFriends = data.get('get_friends').getData(); var html = 'Friends of ' + owner.getDisplayName() + '<br />'; objFriends.each(function(person) { html += person.getDisplayName() + '<br />'; }); }
47. The Yahoo! Query Language (YQL) SELECT myColumn, myTitle FROM myTable WHERE col = 'value' AND var = 'title‘ LIMIT 3 OFFSET 10 | sort(field='myColumn') | reverse()
48. Getting Social Data with YQL select * from social.profile where guid=me select * from social.connections where owner_guid=me select message from social.profile.status where guid=me select * from social.updates where guid=me
49. Making AJAX Requests With OpenSocial 0.8 var params = {}; var url = 'http://developer.yahoo.com/yql/console/?q=select%20*%20from%20flickr.photos.search%20where%20text%3D%22Times%20Square%22' var callback = callbackFunc; params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.TEXT; params[gadgets.io.RequestParameters.METHOD] = gadgets.io.MethodType.GET; gadgets.io.makeRequest(url, callback, params);
50. Making AJAX Requests With OpenSocial 0.8 function callbackFunc(response){ if (response.text){ //use response.txt } }
51. PHP Example: Executing YQL $application = new YahooApplication($key, $secret); $results = $application->query(‘select * from delicious.feeds.popular’); var_dump($results);
58. ENJOY THE REST OF YAHOO! OPEN HACK DAY! EXAMPLES | TUTORIALS | CODE SAMPLES DEVELOPER.YAHOO.COM
Notes de l'éditeur
OAuth is an open protocol, initiated by Blaine Cook and Chris Messina, to allow secure API authorization in a simple and standard method for desktop, mobile and web applications.For consumer developers, OAuth is a method to publish and interact with protected data. For service provider developers, OAuth gives users access to their data while protecting their account credentials. In other words, OAuth allows a user to grant access to their information on one site (the Service Provider), to another site (called Consumer), without sharing all of his or her identity.
Missed connections, this is how you find them.
Y!OS Main Overview - http://developer.yahoo.com/yosYAP Main Overview - http://developer.yahoo.com/yapYQL Docs - http://developer.yahoo.com/yqlYML Docs - http://developer.yahoo.com/yap/ymlYDN Forum - http://developer.yahoo.com/forumYAP Dashboard - http://developer.yahoo.com/dashboardYQL Console - http://developer.yahoo.com/yql/consoleApplication Gallery - http://apps.yahoo.com/myappsJSLint - http://www.jslint.comPHP SDK - http://developer.yahoo.com/social/sdk/AS3 SDK - http://developer.yahoo.com/flash/yos/Caja - http://code.google.com/p/google-caja/Caja Support - http://developer.yahoo.com/yap/guide/caja-support.html