Skip to Content
RESTful Web Services Cookbook
book

RESTful Web Services Cookbook

by Subbu Allamaraju
March 2010
Intermediate to advanced
312 pages
7h 31m
English
O'Reilly Media, Inc.
Content preview from RESTful Web Services Cookbook

Chapter 7. Content Negotiation

Content negotiation, or conneg as it is sometimes called, is the process of selecting the best representation of a resource for a client when there are multiple representations (or variants) available. Although content negotiation is often associated with the practice of indicating media type preferences, content negotiation is also used to indicate preferences for localizing by language, character encoding, and compression.

HTTP specifies two types of content negotiation. These are server-driven negotiation and agent-driven negotiation. Server-driven negotiation uses request headers to select a variant, and agent-driven negotiation uses a distinct URI for each variant.

This chapter discusses the following recipes that deal with content negotiation:

Recipe 7.1

Use this recipe to decide which Accept-* headers to include when requesting a resource and with what values.

Recipe 7.2

Use this recipe to learn how to implement servers that correctly interpret the Accept request header for media type negotiation.

Recipe 7.3

Use this recipe to learn how to implement language negotiation using the Accept-Language header.

Recipe 7.4

Use this recipe to learn how to determine the requested character encoding for a representation.

Recipe 7.5

HTTP allows clients to indicate their preference for compressed representations via the Accept-Encoding request header. Use this recipe to decide how to process this header on the server.

Recipe 7.6

Use this recipe to learn how to use the ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

RESTful Web Services

RESTful Web Services

Leonard Richardson, Sam Ruby
RESTful Web Clients

RESTful Web Clients

Mike Amundsen

Publisher Resources

ISBN: 9780596809140Errata Page