[
https://issues.apache.org/jira/browse/COUCHDB-2052?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13894693#comment-13894693
]
Benoit Chesneau commented on COUCHDB-2052:
------------------------------------------
[~snej] agree it/I may have been too far. Also [~rnewson] is right this
is smth we do in the replicator too, but maybe we can improved it a
litte.
I am thinking that the faster answer to your problem would be listing
all the URI we have on a node associated to the vendor id and version.
Then the client can recover these informations and use them to setup
itself. Definitely +1 for it. imo having a json on / that return
{
vendor_id,
vendor_url,
version,
resources: [
"/"
"/{dbname}/"
...
],
}
This exactly what doess the HOST Meta RFC:
http://tools.ietf.org/search/rfc6415
The project unhosted is doing a similar thing.
I would be +1 for such solutions.
(I will continue the discussion on the ml which another topic)
> Add API for discovering feature availability
> --------------------------------------------
>
> Key: COUCHDB-2052
> URL: https://issues.apache.org/jira/browse/COUCHDB-2052
> Project: CouchDB
> Issue Type: Improvement
> Security Level: public(Regular issues)
> Components: HTTP Interface
> Reporter: Jens Alfke
>
> I propose adding to the response of "GET /" a property called "features" or
> "extensions" whose value is an array of strings, each string being an
> agreed-upon identifier of a specific optional feature. For example:
> {"couchdb": "welcome", "features": ["_bulk_get", "persona"]}, "vendor":
> …
> Rationale:
> Features are being added to CouchDB over time, plug-ins may add features, and
> there are compatible servers that may have nonstandard features (like
> _bulk_get). But there isn't a clear way for a client (which might be another
> server's replicator) to determine what features a server has. Currently a
> client looking at the response of a GET / has to figure out what server and
> version thereof it's talking to, and then has to consult hardcoded knowledge
> that version X of server Y supports feature Z.
> (True, you can often get away without needing to check, by assuming a feature
> exists but falling back to standard behavior if you get an error. But not all
> features may be so easy to detect — the behavior of an unaware server might
> be to ignore the feature and do the wrong thing, rather than returning an
> error — and anyway this adds extra round-trips that slow down the operation.)
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)