質問

現在、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 /-headerスイッチでヘッダーを追加することができます。 image / jpegコンテンツタイプのヘッダーを追加し、これをコマンドに追加します。

  

-H" Content-Type:image / jpeg"

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top