summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Newson <rnewson@apache.org>2012-11-21 14:01:46 +0000
committerRobert Newson <rnewson@apache.org>2012-11-21 14:01:46 +0000
commit98515bf0b990ca096ec5a47b9cd048427a0ec66c (patch)
treefd7b92cda8c79f1cce869f73da81fa834853cd44
parent98b2ad697694fdf6be293bed3ea31a8d1e39b0ad (diff)
downloadcouchdb-98515bf0b990ca096ec5a47b9cd048427a0ec66c.tar.gz
Return X-Couch-Id from show functions if doc is created
-rw-r--r--share/www/script/test/update_documents.js3
-rw-r--r--src/couch_mrview/src/couch_mrview_show.erl5
2 files changed, 6 insertions, 2 deletions
diff --git a/share/www/script/test/update_documents.js b/share/www/script/test/update_documents.js
index 6a318fd5c..32ec72e74 100644
--- a/share/www/script/test/update_documents.js
+++ b/share/www/script/test/update_documents.js
@@ -121,7 +121,8 @@ couchTests.update_documents = function(debug) {
xhr = CouchDB.request("PUT", "/test_suite_db/_design/update/_update/hello/"+docid);
T(xhr.status == 201);
T(xhr.responseText == "<p>hello doc</p>");
- T(/charset=utf-8/.test(xhr.getResponseHeader("Content-Type")))
+ T(/charset=utf-8/.test(xhr.getResponseHeader("Content-Type")));
+ T(equals(docid, xhr.getResponseHeader("X-Couch-Id")));
doc = db.open(docid);
T(doc.world == "hello");
diff --git a/src/couch_mrview/src/couch_mrview_show.erl b/src/couch_mrview/src/couch_mrview_show.erl
index 3bfa035f7..16ea1e69a 100644
--- a/src/couch_mrview/src/couch_mrview_show.erl
+++ b/src/couch_mrview/src/couch_mrview_show.erl
@@ -146,7 +146,10 @@ send_doc_update_response(Req, Db, DDoc, UpdateName, Doc, DocId) ->
NewRevStr = couch_doc:rev_to_str(NewRev),
{[
{<<"code">>, 201},
- {<<"headers">>, {[{<<"X-Couch-Update-NewRev">>, NewRevStr}]}}
+ {<<"headers">>, {[
+ {<<"X-Couch-Update-NewRev">>, NewRevStr},
+ {<<"X-Couch-Id">>, NewDoc#doc.id}
+ ]}}
| JsonResp0]};
[<<"up">>, _Other, {JsonResp0}] ->
{[{<<"code">>, 200} | JsonResp0]}