Chapter 7. Web Browsers

IN THIS CHAPTER

  • Overview of browser functionality

  • Architectural considerations

  • Processing HTTP requests and responses

  • Cookies, privacy, and P3P

  • Complex HTTP interactions

OBJECTIVES

  • Establish the set of tasks that web browsers must perform.

  • Break down browser architecture into component modules, establishing the responsibilities of these modules and their interactions.

  • Provide an in-depth analysis of the processing flow in a web browser.

  • Examine how browsers create and transmit HTTP requests, receive and interpret HTTP responses, and interact with the user.

  • Focus on browser support for cookies, caching, and authorization.

  • Examine the page-rendering process, including generating requests for supporting data items and using plug-ins and helper applications to render multimedia content.

In this chapter, we go over the fundamental considerations in designing and building a web browser, and other sophisticated web clients. When discussing web browsers, our focus is not on the graphical aspects of browser functionality (i.e., the layout of pages or the rendering of images). Instead, we concentrate on the issues associated with the processing of HTTP requests and responses. The value of this knowledge will become apparent as we proceed to a discussion of sophisticated web applications in the following chapters.

It is not uncommon for the wisdom of studying web browser design to be questioned. After all, the task of designing a browser is a fait accompli, a known problem that already ...

Get Web Application Architecture: Principles, Protocols and Practices, 2nd Edition 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.