Pergunta

Atualmente, estou jogando com o CouchDB e testar funcionalidade dos anexos independentes ', que é descrito perto da parte inferior desta página .

Eu estou tentando usar o recurso --data-urlencode do curl para enviar o pedido de criação, que apenas metade obras. Eu posso criar o anexo e recuperá-lo, mas o campo Content-Type é errado, então a imagem não será exibida corretamente.

Para ser mais exato CouchDB parece trabalho, devolvendo o anexo usando o mesmo tipo de conteúdo que foi publicado em. (O que é perfeitamente sensato IMO) Meu problema é onda não envia o código correto. Aqui está os detalhes;

 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
>

Assim, a versão curta desta questão é; Como eu recebo cURL para enviar a correta Content-Type?

EDIT:

Eu libero que meu outro erro foi usar --data-urlencode, quando a fazê-lo funcionar eu preciso usar --data binário @filename juntamente com a opção -H que Dale sugeriu.

Foi útil?

Solução

Você pode cabeçalhos add com o -H / - interruptor cabeçalho , por assim adicionar um cabeçalho para a imagem / jPEG tipo de conteúdo, adicione isso ao seu comando:

H "Content-Type: image / jpeg"

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top