
The Address Book XML/JSON API uses HTTP for transport. Communication parameters are negotiated as part of the HTTP request header mechanism, and the XML/JSON API does not influence this negotiation in any way. In particular, the server may choose to use the chunked Transfer-Encoding, and in this case the Response headers may not include a Content-Length header. Calls to the Address Book XML/JSON API should not depend on the Content-Length header being present in the Response. Also, if the HTTP headers sent by the client imply that the gzip content-encoding can be used, the server response may use this encoding. Users of libraries like curl should not need to worry about details of the HTTP protocol. A common mistake, however, is to assume that a Content-Length header will be present in the Response, which is not guaranteed.