Can';Android应用中的t-POST多协议
我试图在Android中使用MultiPartEntity和HttpClient发送一个图像,但不断得到异常:Can';Android应用中的t-POST多协议,android,apache,post,httpclient,multipartform-data,Android,Apache,Post,Httpclient,Multipartform Data,我试图在Android中使用MultiPartEntity和HttpClient发送一个图像,但不断得到异常:java.lang.UnsupportedOperationException:Multipart表单实体未实现#getContent() 这是我的密码: public boolean enrollImage(String id, byte[] image) { HttpClient httpClient = new DefaultHttpClient(); HttpPo
java.lang.UnsupportedOperationException:Multipart表单实体未实现#getContent()
这是我的密码:
public boolean enrollImage(String id, byte[] image) {
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("https://example.com/"+id+"/images/");
httpPost.addHeader("Authorization", "Basic " + Base64.encodeToString(("user"+":"+"password").getBytes(),Base64.NO_WRAP));
MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
entity.addPart("image", new ByteArrayBody(image, "image/jpg", "image.jpg"));
httpPost.setEntity(entity);
HttpResponse response;
try {
response = httpClient.execute(httpPost);
HttpEntity responseEntity = response.getEntity();
String responseString = EntityUtils.toString(entity);
JSONObject json = new JSONObject(responseString);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return true;
}
我已经将较新的Apache库httpime-4.2.5.jar
,httpclient-4.2.5.jar
,httpcore-4.2.4.jar
和Apache-mime4j-core-0.7.2.jar
添加到我的项目中
我如何运行它,以便发布事实证明,我只是混淆了我发送的请求实体和我想要解析为json的响应实体。该代码的第12行应该是
String responseString = EntityUtils.toString(responseEntity);
不是
问题解决了。我想我该买一个了。你应该对照你的多部分代码检查一下这个例子。每个人都需要一个橡皮鸭@谢谢你链接维基百科的那篇文章,我从来没有读过。
String responseString = EntityUtils.toString(entity);