cURLを使用してcouchdbスタンドアロン添付ファイルを作成する
-
10-07-2019 - |
質問
現在、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"
所属していません StackOverflow