I suspect "ISO-8859-1" make a problem. open-socket-for-uri of (web client) sets encoding of port to "ISO-8859-1". read-response of (web response) also sets encoding of port to "ISO-8859-1". (use-modules ((srfi srfi-11) #:select (let-values)) ((web uri) #:select (string->uri)) ((web client) #:select (http-get))) (let-values (((res-headers res-body) (http-get (string->uri "http://www.gnu.org/home.html") #:extra-headers (acons 'Accept "text/html" (acons 'Accept-Charset "ISO-8859-1" (acons 'Accept-Language "en-US" '())))))) (display res-body) (newline)) Above code makes an error: ... In web/response.scm: 187: 2 [read-response #] In web/http.scm: 218: 1 [lp ((server . "Apache/2.2.14") (date . #))] 184: 0 [read-header #] Same error after changing above "ISO-8859-1" to "utf-8" of course; It's meaningless. (let-values (((res-headers res-body) (http-get (string->uri "http://www.gnu.org/home.html") #:extra-headers (acons 'Accept "text/plain" '())))) (display res-body) (newline)) Above code display this: 406 Not Acceptable

Not Acceptable

An appropriate representation of the requested resource /home.html could not be found on this server.

Available variants: