我从位于的文档开始
localhost:5984/categories/Jan
以下数据:
{
"_id": "Jan",
"_rev": "4-2c0b1c27daca6d2a3c375b0f879a8967",
"name": "Jan",
}
我想将pdf上传到此文档,因此我提供以下curl命令:
curl -vX PUT 'http://localhost:5984/categories/Jan/example.pdf?rev=4-2c0b1c27daca6d2a3c375b0f879a8967' -d@example.pdf -H "ContentType: application/pdf"
我收到了这个回复:
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 5984 (#0)
> PUT /categories/Jan/example.pdf?rev=4-2c0b1c27daca6d2a3c375b0f879a8967 HTTP/1.1
> Host: localhost:5984
> User-Agent: curl/7.47.0
> Accept: */*
> ContentType: application/pdf
> Content-Length: 10944067
> Content-Type: application/x-www-form-urlencoded
> Expect: 100-continue
>
< HTTP/1.1 100 Continue
< Server: MochiWeb/1.0 (Any of you quaids got a smint?)
< Date: Thu, 11 Jan 2018 07:48:21 GMT
< Connection: close
* We are completely uploaded and fine
< HTTP/1.1 201 Created
< X-CouchDB-Body-Time: 0
< X-Couch-Request-ID: d509f366b8
< Server: CouchDB/2.1.1 (Erlang OTP/18)
< Location: http://localhost:5984/categories/Jan/example.pdf
< Date: Thu, 11 Jan 2018 07:48:23 GMT
< Content-Type: application/json
< Content-Length: 66
< Cache-Control: must-revalidate
<
{"ok":true,"id":"Jan","rev":"5-4ae0ca0bd54d63b9ac45e3e57785648d"}
在我看来,这是一个成功的上传。但是,当我访问网址时
localhost:5984/categories/Jan/example.pdf
,有两个问题:
除了pdfs之外,其他内容类型也会发生这种情况(我还尝试过使用png)。谁能让我知道可能会出错?感谢。
答案 0 :(得分:3)
问题似乎是您在附件创建期间指定的 ContentType 标头。
正确的标题名称为内容类型
curl命令应为:
curl -vX PUT 'http://localhost:5984/categories/Jan/example.pdf?rev=4-2c0b1c27daca6d2a3c375b0f879a8967' -d@example.pdf -H "Content-Type: application/pdf"