Chapter 10. Web Services

In the previous chapter, you used web services to exchange data between a client and server. However, to use web services with JavaScript to their fullest, you need to master some additional skills. These include error handling, inline web services (web service methods in the current .aspx page), and using web services and JavaScript without the help of the .NET Framework.

In this chapter, you will learn some special features of Atlas’s web services support, including error handling and maintaining session state. Furthermore, you will see how to call external web services, overcoming the same-domain security policy the XMLHttpRequest object has (see Chapter 3).

Error Handling

Up to now, when working with web services, we expected our remote calls to work all the time, or to time out. However, the fact that the web service could throw an exception has not yet been considered.

When using web services from remote servers (which here means servers residing on another domain), developers often do not include exception-handling code. One reason is that a web service can be implemented with any technology, and every technology has its own way of running exceptions; some do not run exceptions at all.

However in the case of Atlas and Ajax, using web services is a bit different. We cannot directly use a remote service, since the security model forbids us to do so—by default, JavaScript and the XMLHttpRequest object allow access only to URIs that reside within ...

Get Programming Atlas now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.