Chapter 7. Client-Server Communication
The goog.net
package contains various utilities for
communicating with a server from a web browser. With the growing popularity
of Ajax, the most common technique is to use an XMLHttpRequest
object to request updates from the server. As this chapter will explain,
that is not the only option, but it is certainly a good place to
start.
Server Requests
Like all modern JavaScript libraries, Closure provides a
cross-browser abstraction for sending an XMLHttpRequest
to the server. This section introduces the classes in
goog.net
that support this abstraction.
goog.net.XmlHttp
In the simplest case, the built-in XMLHttpRequest
object is used to load the contents of a URL asynchronously and then
pass the data to another function:
var getDataAndAlertIt = function(url) { // This line will not work on Internet Explorer 6. var xhr = new XMLHttpRequest(); xhr.open('GET', url, true /* load the URL asynchronously */); xhr.onreadystatechange = function() { // When an XHR enters ready state 4, that indicates that the request // is complete and that all of the data is available. if (xhr.readyState == 4) { // In this case, alert() is used to handle the data. alert('This alert will display second: ' + xhr.responseText); } }; xhr.send(null); }; // Because the XHR will load the data asynchronously, this call will return // immediately even though the data is not loaded yet. getDataAndAlertIt('http://www.example.com/testdata.txt'); // This statement will execute while testdata.txt ...
Get Closure: The Definitive Guide now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.