我想在CouchDB服务器中保存一个文档,以便编写自己的PUT请求。我可以使用curl命令来做到这一点:

> curl -vX PUT http://127.0.0.1:5984/albums/6e1295ed6c29495e54cc05947f18c8af/artwork.jpg?rev=2-2739352689 --data-binary @artwork.jpg -H "Content-Type: image/jpg"


如何在Java中以PUT请求形式编写相同的内容,例如:

HttpPut request = new HttpPut(url);
            StringEntity stringEntity = null;
            try {
                stringEntity = new StringEntity(
                        (new JSONObject(map)).toString());
            } catch (UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            stringEntity.setContentType(new BasicHeader(HTTP.CONTENT_TYPE,
                    "application/json"));
            request.setHeader("Content-type", "application/json");
            request.setEntity(stringEntity);


任何想法,如何编写上述Curl命令中编写的put请求。

最佳答案

您需要处理二进制数据,我今天才这样做,并回答了另一篇文章:
Couchdb Upload Image via Httpclient

07-24 13:45