我目前正在使用couchdb并测试“独立附件”功能,该功能在此页

我正在尝试使用curl的--data-urlencode功能发送创建请求,其中只有一半有效。我可以创建附件并检索它,但Content-Type字段是错误的,因此图像将无法正确显示。

为了更准确,CouchDB似乎可以通过使用发布的相同Content-Type返回附件来工作。(这是非常明智的IMO)我的问题是curl没有发送正确的代码。这是详细信息;

 curl -vX PUT http://localhost:5984/dafttest/666/attachment --data-urlencode image/jpeg@xi_on_beach.jpg
* About to connect() to localhost port 5984 (#0)
*   Trying 127.0.0.1... connected
* Connected to localhost (127.0.0.1) port 5984 (#0)
> PUT /dafttest/666/attachment HTTP/1.1
> User-Agent: curl/7.19.4 (x86_64-pc-linux-gnu) libcurl/7.19.4 OpenSSL/0.9.8k zlib/1.2.3
> Host: localhost:5984
> Accept: */*
> Content-Length: 495389
> Content-Type: application/x-www-form-urlencoded
> Expect: 100-continue
>

所以这个问题的简短版本是;如何让cURL发送正确的Content-Type?

编辑:

我发布我的另一个错误是使用--data-urlencode,什么时候开始工作我需要使用--data binary @filename和Dale建议的-H选项。

有帮助吗?

解决方案

您可以使用-H / - 标题开关添加标题,以便为image / jpeg内容类型添加标题,将其添加到您的命令:

  

-H <!> quot; Content-Type:image / jpeg <!> quot;

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top