CouchDB 是不是支持附件 PUT 请求中的 Content-Range?
Posted
技术标签:
【中文标题】CouchDB 是不是支持附件 PUT 请求中的 Content-Range?【英文标题】:Does CouchDB suppport Content-Range in attachment PUT requests?CouchDB 是否支持附件 PUT 请求中的 Content-Range? 【发布时间】:2015-03-24 08:46:30 【问题描述】:我想使用 CouchDB 来保存一些日志(不要问为什么;-))并且我想使用 CouchDB 的attachment feature。需要注意的是,我有很多日志,但是每个日志都比较小,我不希望它们中的任何一个超过 1Mb(通常它们更多在几 Kb 范围内)。
AFAICS 我有几个选择:
-
我可以在服务器端累积日志,然后将整个日志作为附件一次性推送到服务器,但这意味着它们不会立即可用:-(
我可以定期推送日志,但为了更新它们,我需要再次下载它们,将更多信息附加到它们并将它们推送回 CouchDB
我对这两种解决方案都不满意,尽管这可能使我想到第三种选择(以及我的问题)。
对于 GET 请求,CouchDB clearly 支持 (Content-)Range 标头(根据RFC 2616,这似乎不是标准标头)。 RFC 2616 也没有将 Content-Range 限制为仅 GET 请求(这个意见似乎是shared with others)。
所以问题是 CouchDB 是否也支持 PUT 请求。在这种情况下,我可以附加到非常适合我的用例的附件 :-)
【问题讨论】:
【参考方案1】:CouchDB 开发人员在这里。 PUT 上的范围不是一个功能,但完全可以作为一个很好的补充。你愿意打开一个问题吗? https://issues.apache.org/jira/browse/COUCHDB
此外,这将是一个很棒的第一个补丁,也是学习一些 Erlang 的好借口(@987654322@ 开始使用)。
【讨论】:
是个好主意,但我得到了以下回复:“这已经被提出过。不幸的是,规范已经澄清这是不允许的;rfc 7231” 啊太糟糕了,也许我们可以用 PATCH 解决问题,就像问题中提到的那样以上是关于CouchDB 是不是支持附件 PUT 请求中的 Content-Range?的主要内容,如果未能解决你的问题,请参考以下文章