我从一个位于的文件开始

本地主机:5984 /分类/月

以下数据:

{
  "_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,有两个问题:

>而不是在浏览器中打开,我被要求下载附件
>当我下载并打开附件时,它表示无法读取数据.

除了pdf之外,其他内容类型也会发生这种情况(我也尝试过使用png).谁能让我知道可能会出错?谢谢.

解决方法

问题似乎是您在附件创建期间指定的ContentType标头.

正确的标题名称是Content-Type

curl命令应该是:

curl -vX PUT 'http://localhost:5984/categories/Jan/example.pdf?rev=4-2c0b1c27daca6d2a3c375b0f879a8967' -d@example.pdf -H "Content-Type: application/pdf"

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。