Survey							
                            
		                
		                * Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
AJAX and REST What is AJAX?  It’s an acronym for Asynchronous JavaScript and XML   It’s not really a single technology but several   Although requests need not be asynchronous HTML / CSS / DOM / XML It’s used to dynamically update Web pages  or at least parts of them What is AJAX?  It uses the HTTPRequest and HTTPResponse objects to   Make a server request from client JavaScript And process the server-side response AJAX (model) From W3Schools.com AJAX Frameworks   Most vendors have their own AJAX abstraction layers ASP has a script manager and an AJAX toolkit   There are several for PHP   It’s a layer on top of AJAX Phery, CJAX, Quicknet There are frameworks for Python, Perl, Ruby and others RestFull APIs   These are generally available API that accept and execute AJAX requests Yahoo has YQL   SQL-like queries are built into the URL (GET request) I’ll show this in class RestFull APIS  Google has a number of APIs   These use JSON typically JSON is an alternative to moving the responses around as XML AJAX (The Mechanics)      The XMLHttpRequest object is used to create a request The request gets configured with the open method The request gets sent with the send method The responseText and responseXML properties store the returned information Use the onreadystatechange event for async requests AJAX XMLHttpRequest  The following creates the request   The open method define the type of request     var req = new XMLHttpRequest(); The first argument contains the method to use (GET or POST) The second argument contains the URL The third argument contains true (asynchronous) or false (synchronous) The send method sends the request to the server AJAX XMLHttpRequest (Example)  Create open and send a synchronous request AJAX Response (Synchronous)  When the request completes, we get at the response through the following properties of the XMLHttpRequest object   responseText – gets the response data as a string responseXML gets the response data as XML, which we can then parse using the DOM  This is the same DOM we talked about AJAX Response (Synchronous) AJAX Response (Asynchronous)  The onreadystatechanged event fires as the request progresses       Initialize Loading Loaded Interactive Completed Status and status contain the result status information  404 – not found / 200 success AJAX Response (Asynchronous) AJAX (jQuery)  As usual, jQuery makes the process simple A Few Words about XML  It’s the extensible markup language   It looks like XHTML 5     Data is frequently stored and transported as XML Tags, attributes and elements Nesting concepts are the same However the tag and attribute names can be any valid name .NET knows about them A Few Words about XML  Sample XML document REST     Acronym for Representational State Transfer REST (restful Web services) is a way of exchanging HTTP requests and responses between client and server It’s an alternative to Web Services and SOAP It’s an alternative to Remote Procedure Calls (RPC) REST  For read requests we     Send all data to the server via a URL and GET request URLs are a logical location, rather than a physical resource Data is typically returned as XML It’s not a standard but a way of doing things   An architecture of style YQL is restful A Few Words about YQL   Yahoo Query Language Implemented as a Web service, they maintain a number of tables   Finance Geography and many more http://developer.yahoo.com/yql/guide/yqlopentables-chapter.html# AJAX (References)   http://w3schools.com/ajax/default.asp http://msdn.microsoft.com/enus/library/bb924552.aspx http://developer.yahoo.com/yql/ HTML 5  http://www.ibm.com/developerworks/library/ x-html5/