3.12. HTTP Resource Handlers¶
3.12.1. Global HTTP Handlers¶
-
[httpd_global_handlers]
¶ These HTTP resources are provided for CouchDB server root level.
-
/
¶ [httpd_global_handlers] / = {couch_httpd_misc_handlers, handle_welcome_req, <<"Welcome">>}
-
favicon.ico
¶ The favicon handler looks for favicon.ico file within specified directory:
[httpd_global_handlers] favicon.ico = {couch_httpd_misc_handlers, handle_favicon_req, "/usr/share/couchdb/www"}
-
_active_tasks
¶ [httpd_global_handlers] _active_tasks = {couch_httpd_misc_handlers, handle_task_status_req}
-
_all_dbs
¶ Provides a list of all server’s databases:
[httpd_global_handlers] _all_dbs = {couch_httpd_misc_handlers, handle_all_dbs_req}
Note
Sometimes you don’t want to disclose database names for everyone, but you also don’t like/want/able to set up any proxies in front of CouchDB. Removing this handler disables
_all_dbs
resource and there will be no way to get list of available databases.The same also is true for other resource handlers.
-
_config
¶ Provides resource to work with CouchDB config remotely. Any config changes that was made via HTTP API are applied automatically on fly and doesn’t requires server instance to be restarted:
[httpd_global_handlers] _config = {couch_httpd_misc_handlers, handle_config_req}
-
_replicate
¶ Provides an API to run temporary replications:
[httpd_global_handlers] _replicate = {couch_replicator_httpd, handle_req}
-
_restart
¶ [httpd_global_handlers] _restart = {couch_httpd_misc_handlers, handle_restart_req}
-
_session
¶ Provides a resource with information about the current user’s session:
[httpd_global_handlers] _session = {couch_httpd_auth, handle_session_req}
-
_stats
¶ [httpd_global_handlers] _stats = {couch_httpd_stats_handlers, handle_stats_req}
-
_utils
¶ The _utils handler serves Fauxton‘s web administration page:
[httpd_global_handlers] _utils = {couch_httpd_misc_handlers, handle_utils_dir_req, "/usr/share/couchdb/www"}
In similar way, you may set up custom handler to let CouchDB serve any static files.
-
_uuids
¶ Provides a resource to get UUIDs generated by CouchDB:
[httpd_global_handlers] _uuids = {couch_httpd_misc_handlers, handle_uuids_req}
This is useful when your client environment isn’t capable of providing truly random IDs (web browsers e.g.).
-
3.12.2. Database HTTP Handlers¶
-
[httpd_db_handlers]
¶ These HTTP resources are available on every CouchDB database.
-
_all_docs
¶ [httpd_db_handlers] _all_docs = {couch_mrview_http, handle_all_docs_req}
-
_local_docs
¶ [httpd_db_handlers] _local_docs = {couch_mrview_http, handle_local_docs_req}
-
_design_docs
¶ [httpd_db_handlers] _design_docs = {couch_mrview_http, handle_design_docs_req}
-
_changes
¶ [httpd_db_handlers] _changes = {couch_httpd_db, handle_changes_req}
-
_compact
¶ [httpd_db_handlers] _compact = {couch_httpd_db, handle_compact_req}
-
_design
¶ [httpd_db_handlers] _design = {couch_httpd_db, handle_design_req}
-
_view_cleanup
¶ [httpd_db_handlers] _view_cleanup = {couch_mrview_http, handle_cleanup_req}
-
3.12.3. Design Documents HTTP Handlers¶
-
[httpd_design_handlers]
¶
These HTTP resources are provided for design documents.
_compact
¶ [httpd_design_handlers] _compact = {couch_mrview_http, handle_compact_req}
_info
¶ [httpd_design_handlers] _info = {couch_mrview_http, handle_info_req}
_list
¶ [httpd_design_handlers] _list = {couch_mrview_show, handle_view_list_req}
_rewrite
¶ [httpd_design_handlers] _rewrite = {couch_httpd_rewrite, handle_rewrite_req}
_show
¶ [httpd_design_handlers] _show = {couch_mrview_show, handle_doc_show_req}
_update
¶ [httpd_design_handlers] _update = {couch_mrview_show, handle_doc_update_req}
_view
¶ [httpd_design_handlers] _view = {couch_mrview_http, handle_view_req}