Informatics 133: User Interaction Software
Fall 2011
Department of Informatics
Donald Bren School of Information and Computer Sciences
Assignment 02 :
Goal: Gain experience with the real-time web, XML, JSON and Javascript
- This is a solo assignment
- Identify 5 JSON/XML data sources (URLs) that have geo-data in them. They must come from different domains.
- Create a web-page that loads one of the 5 data-sources using AJAX, parses it and presents the data as a table on the webpage.
- You must deal with cross-site data requests (you need a proxy or JSONP),
- You must pick a library to parse and manipulate the data
- You must insert/modify a javascript structure into a web-page
- For the table
- It must have one row for every entry in the feed
- Each row must have a description of the feed entry and the associated geo-data (at least)
- The number of rows must *not* be hardcoded into the HTML. It must be dynamically loaded from the remote URL
- Turn in a link to your web-page using the EEE Quiz Mechanism (click here)
- The web-page should list the 5 data sources (by URL) and a hand written description of what they are
- Also on the web page should be a description of how you accomplished your data-parsing
- Also on the web page is the table that is the result of your parsing (it should generate itself from a live AJAX call)
- For bonus points do this three times: load one XML AJAX example, one JSON AJAX example and one JSONP example.
- Resources:
- a proxy program which will get around the cross-site data restrictions:
- Please note that this file must be on a machine that has both php and curl installed (students.ics.uci.edu is one such machine). The myProxy.php file must be on the same domain as the one that is executing the javascript. That's the whole point of why you need it.
- When it is called with a url like this:
- http://www.mydomain.com/myProxy.php?http://www.yourdomain.com/file.xml
- It will use php and curl to load www.yourdomain.com/file.xml and send it back as if it were on the local machine
- This is all due Friday night at midnight (10/22 12:00am) right right as it becomes Saturday.