|
| Latest
Web News |
PayPal to offer password key fobs to users eBay is getting ready to offer its PayPal users a password-generating key fob that promises to increase the security of the online payment service. The device displays a new one-time password in the form of a six-digit code about every 30 seconds. PayPal clients who opt to use the device will enter this password along with their regular...
New Microsoft chief hits the road Microsoft Australia is preparing to install newly appointed managing director Tracey Fellows in the Business Council of Australia, as it works to secure its influence in boardrooms around the country. Ms Fellows, who was appointed last week, is also reviewing opportunities to join a number of other associations, although it is unclear if she will fill all the industry roles of her...
Battle lines drawn over broadband THE Federal Government is planning a multimillion-dollar campaign to convince voters that broadband in regional Australia is not the disgrace that media mogul Rupert Murdoch says it is. The campaign is expected to begin within months as the Government seeks to improve its standing ahead of the election later this year. The plans come as Telstra continues its own war....
Fame (and butter chickens) A Brisbane band which features a cartoon Indian Elvis as lead singer is being catapulted to global fame via the internet. More than a million people have viewed Boymongoose's tongue-in-cheek music video on the YouTube website. Now the Brisbane musicians behind the hit hope they can follow in the footsteps of singer Sandi Thom, who spent 10 weeks at the top of the Australian charts after launching her career online. The band's...
YouTube a friend, says Ten Television network Ten says the likes of Google and YouTube should be welcomed as allies rather than being treated as the enemy in the emerging online video battle. With a new web showcase due next month, the broadcaster was developing its plans for internet video, digital general manager Damian Smith said. "Online video, whether its streaming or downloading...
Singapore teen gets probation, community... A Singaporean teenager who illegally tapped into a neighbour's wireless Internet network _ an offense the city-state deems punishable by jail _ was placed on 18 months' probation by a district court Tuesday. The court also ordered Garyl Tan Jia Luo, 17, to carry out 80 hours of community service after he admitted linking his computer to his neighbour's wireless router to access...
First Click may get flick Another successful IT initiative could be on the scrap heap as the State Government hedges its bets on funding the First Click computer training program beyond this financial year. First Click, which teaches elderly and disadvantaged people basic computer skills, faces an uncertain future amid rumours the Government is about to pull the pin on funding for the scheme as happened to the...
|
 | |
|
01.16.07
Creating Web2.0 Apps W/ AJAX & Clientside HTTP Requests
By
Lucas Green
Web2.0 is a term coined to refer to web applications that run without visible page refreshes. A normal website functions by delivering pages of information, with links that allow a user to move from page to page.
A web 2.0 application, or AJAX application, runs on a single web page, and uses clientside javascript to initiate and process additional requests to the server. The additional requests run in the background and are invisible to the user; the end result is that the web application appears very similar to a normal computer program, and the user can continue to manipulate the application and application interface without having to wait for the additional requests sent to the server to complete.
AJAX is an acronym that stands for Asynchronous Javascript and XML. The interesting thing about AJAX is that the XML component is actually unnecessary, or rather optional. The important component is asynchronous javascript -- this is the meat of how web2.0 applications work and the XML component is just one possible format for sending and receiving the additional data requests to the server. However, since this processing happens in the background and is invisible to the end user, you can actually build a web2.0 application using any format for the data requests that you wish.
The key to implementing an AJAX web2.0 application is in the XMLHTTP Object. The XMLHTTP objects exists in many forms, both server-side and client-side, and the purpose of it is to allow retrieval and processing of external web pages from within the coding application. Since we are trying to build a client-side web2.0 application, and since Javascript is the most widely available scripting application for web browsers, AJAX is the ideal implementation, and a good cross-browser Javascript code for instantiating the XMLHTTP Object is as follows:
When creating a web2.0 application, the idea is that whenever you would normally send data to the server and receive a response in return by submitting a form, or using a link to an external page, instead you implement it by using the XMLHTTP object to send the request or form in the background, and process the resulting data without causing the browser to reload. The XMLHTTP Object allows you to send requests synchronously or asynchronously, but since we are creating an AJAX application you will use asynchronous mode in almost all cases. When submitting form data, you can use either the GET or POST method, but in this article I will show you how to use POST with the XMLHTTP Object as that allows you the widest possible uses.
Cost Effective Website and Network Monitoring IPCheck Server Monitor - Free Download |
|
Once you instantiate the XMLHTTP object, there are four simple commands to creating a web2.0 application. The "onreadystatechange" property is used for asynchronous mode to define a function that is executed whenever the state of the request changes (such as when it completes). The "open" method creates the request and the "send" method send the request. Also, the "setRequestHeader" method is used to specify the format of the data that is being submitted. Here is some example code that shows how a basic AJAX application would work:
In this example, "/ajax.asp" is the page that is being retrieved, and "ajaxProcess()" is the function that is executed once the page is retrieved. The variables "p1" and "p2" are sent to the page as form data. You can of course send whatever data you wish according to what you need to do; just make sure that the ajax.asp file processes them correctly and returns the results. Define the ajaxProcess() function so that it processes the returned results, and updates the user interface to indicate that the request has been completed and updates the appropriate variables and/or the user with the new data. If you would like to see an AJAX web2.0 application in action, you can check out the web2.0 RPG I created, Apocalypse, found at www.apocrpg.com .
Using these methods, you can in fact send whatever data you want to the server and process the results, just as if you had used a normal HTTP request. The difference is that when done normally, the end user has to wait for each page to be loaded, which can be unacceptable if the user is on dialup and there are a large number of actions to be performed independently (multiple page reloads). By using AJAX in a web2.0 application, you can execute these actions in the background, and the user never notices the delays as he is able to continue manipulating your user interface while the page requests are processing in the background, invisible.
This type of web application wasn't possible in the past, for two reasons. Primarily, the XMLHTTP object wasn't available until recently, and also Javascript was not widely supported by almost all browsers as it is today. Now that background page requests are possible, it is likely that in the future all web applications will be converted or migrated to web2.0 / clientside AJAX applications. There are also innumerable web applications that simply weren't possible or feasible under the old model, that we will undoubtedly be see appearing in the next few years, that could potentially be very successful. Your website could be one of these, so get started!
About
the Author:
This article was written by Lucas Green, a professional private web developer who lives off his internet income. To visit his website and learn more about how he is creating multiple streams of passive income using the internet, please visit www.lucasgreen.com !
|
|