summaryrefslogtreecommitdiff
path: root/src/couchdb/couch_httpd_db.erl
diff options
context:
space:
mode:
authorAdam Kocoloski <kocolosk@apache.org>2010-04-15 16:40:36 +0000
committerAdam Kocoloski <kocolosk@apache.org>2010-04-15 16:40:36 +0000
commit9bb6096e300765a88fc4ab48a6038e8b6d78db94 (patch)
tree68fca5eb638cd64766a7cf39c2d2e4809f17a42c /src/couchdb/couch_httpd_db.erl
parentf3e688373082574d6f469acc282b873658a2321a (diff)
accept gzipped attachments w/ standalone api. thx fdmanana. COUCHDB-712
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@934481 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/couchdb/couch_httpd_db.erl')
-rw-r--r--src/couchdb/couch_httpd_db.erl15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/couchdb/couch_httpd_db.erl b/src/couchdb/couch_httpd_db.erl
index 1e11e0d3..d7f479bc 100644
--- a/src/couchdb/couch_httpd_db.erl
+++ b/src/couchdb/couch_httpd_db.erl
@@ -945,7 +945,20 @@ db_attachment_req(#httpd{method=Method,mochi_req=MochiReq}=Req, Db, DocId, FileN
Length ->
list_to_integer(Length)
end,
- md5 = get_md5_header(Req)
+ md5 = get_md5_header(Req),
+ encoding = case string:to_lower(string:strip(
+ couch_httpd:header_value(Req,"Content-Encoding","identity")
+ )) of
+ "identity" ->
+ identity;
+ "gzip" ->
+ gzip;
+ _ ->
+ throw({
+ bad_ctype,
+ "Only gzip and identity content-encodings are supported"
+ })
+ end
}]
end,