diff options
author | John Christopher Anderson <jchris@apache.org> | 2009-08-05 04:09:11 +0000 |
---|---|---|
committer | John Christopher Anderson <jchris@apache.org> | 2009-08-05 04:09:11 +0000 |
commit | 4ae77952e4f2453425d3ad0a85a453ca102b322f (patch) | |
tree | 93ab4c114206b0640d9d99903f16c7a69f7adb04 /share/server/validate.js | |
parent | 9cddd68f4648620be9d81aedc125704e1824cf2d (diff) |
Upgraded JavaScript Accept header handling to make it useful.
After user@ thread with Adam Jacob [1] http://tinyurl.com/kuhl2j I realized that giving users the option to set a server preference of mime-types was crucial. Without ordering, you see nasty side effects like a browser getting an Atom feed by default. With ordering, you can ensure that browsers get HTML, API clients see XML, and Ajax apps use JSON in a no-hassle way. Example new API:
function(doc, req) {
provides("html", function() {
return "Hello " + doc.name + ".";
});
provides("xml", function() {
var xml = new XML('<xml></xml>');
xml.hello = doc.name;
return xml;
}
};
If a client sends an Accept header like "application/xml, text/html" this will return html. If the client sends just "application/xml" they will get xml.
respondsWith() has been removed. I don't think it's worth the cost to maintain a parallel implementation just to be deprecated as buggy.
This patch also continues us on the path to a cleaner, more organized query server. Cheers and enjoy.
[1] http://mail-archives.apache.org/mod_mbox/couchdb-user/200907.mbox/%3cb8602b350907241906l7c7f97fdg9d78facacd8605fd@mail.gmail.com%3e
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@801056 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'share/server/validate.js')
0 files changed, 0 insertions, 0 deletions