- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
阅读大量问题和答案后,我决定使用 MultipartEntity。这个答案必须是最好的: https://stackoverflow.com/a/2937140/1388723
我已经实现了:
private class SendImage extends AsyncTask<String, Void, Void> {
String sresponse;
@Override
protected Void doInBackground(String... params) {
HttpClient httpClient = new DefaultHttpClient();
HttpContext localContext = new BasicHttpContext();
HttpPost httpPost = new HttpPost(
"http://taras.xin.com.pl/loadimage.php");
InputStream in = null;
try {
MultipartEntity entity = new MultipartEntity(
HttpMultipartMode.BROWSER_COMPATIBLE);
Log.i("MultyPart", params[0]);
File file = new File(params[0]);
Log.i("MultyPartFILE", file.toString());
ContentBody fb = new FileBody(file, "image/jpeg");
Log.i("MultyPartFB", fb.toString());
entity.addPart("text", new StringBody(
"This text was added to posrt"));
entity.addPart("word", new StringBody(
"This text was added to post"));
entity.addPart("file", fb);
httpPost.setEntity(entity);
HttpResponse response = httpClient.execute(httpPost,
localContext);
in = response.getEntity().getContent();
} catch (IOException e) {
e.printStackTrace();
}
try {
BufferedReader reader = new BufferedReader(
new InputStreamReader(in, "UTF-8"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
in.close();
sresponse = sb.toString();
} catch (Exception e) {
Log.e("Buffer Error", "Error converting result " + e.toString());
}
return null;
}
@Override
protected void onPostExecute(Void result) {
runOnUiThread(new Runnable() {
@Override
public void run() {
text.setText(sresponse);
}
});
super.onPostExecute(result);
}
}
和我的 loadimage.php:
<?php
var_dump($_POST);
var_dump($_FILE);
?>
我接收到 $_POST 的两个字符串,但没有 FileBody(file) 的影子。$_FILE 给出空值。
确切地说,我已经下载了 httpcomponents-client-4.2.2-bin,提取了 httpmime-4.2.2.jar。
最佳答案
尝试只获取你发送的文件
$file = $_FILES['文件'];
关于Android MultipartEntity POST 接收除 FileBody 之外的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13801926/
可能这是一个重复的问题,但我已经尝试过该网站的所有答案,但都不起作用! 我正在使用 MultipartEntity 进行图像上传。它在模拟器中工作得很好,但是当我 checkin 设备时它不工作。 在
所以我创建了一个 Workout 类,我想使用 HttpPost 将它发送到服务器。有什么方法可以将该类添加到 MultipartEntity 中,或者我应该如何发布它? 最佳答案 首先,您的类必须实
我想使用 MultipartEntity 上传图片。我尝试了以下代码。 我没有收到任何错误,但图片未上传。我有足够的上传权限 PHP 'success', 'm
在我开始之前,我看到了很多关于这个的问题,但对我来说没有任何用处也许有人可以向我解释或向我展示如何将位图压缩为 MultiPart 实体,然后使用 Retrofit 将其正确发送到服务器 最佳答案 对
不确定为什么会这样,但这行代码使我的应用程序在调试或运行模式下崩溃: MultipartEntity multipartEntity = new MultipartEntity(HttpMultipa
我最近将我的项目从 Eclipse 迁移到 Android Studio(我还没有完全控制这个 IDE)。在这个项目中,我有一个文件 uploader AsyncTask,它通过 http 发送多部分
文档说 org.apache.http.entity.mime.MultipartEntity类已弃用。有人可以给我推荐一个替代方案吗? 我在我的代码中这样使用它: entity.addPart("p
我想使用 MultipartEntity 上传单张图片。我尝试了以下代码。 但是图片没有上传。我没有收到任何错误。我已经为此添加了足够的库 try { HttpClient
这是我目前所拥有的: MultipartEntity reqEntity = new MultipartEntity(); String strXMLFilename = "/sdcard/image
我想使用 MultipartEntity 将图像和 JsonObject 发送到 PHP 服务器。这是我的代码: HttpClient httpClient = new DefaultHttpClie
我正在使用 MultiPartEntity 在我的 Android 应用程序中发布 XML + 图片,一切都很好,除了我要发布到的服务器要求我设置 Content- HTTP post 的类型到app
我在 MultipartEntity 中传递 3 张图像。这很好用,但我不知道如何将 String 值传递给 MultipartEntity。以下是我的代码: public void executeM
我一直在尝试将图像和数据上传到 Django 服务器。我包含了 apache-mime4j.0.6.jar 和 httpmime4.0.1.jar 库(Project->build path->Add
我想将文件的内容作为 org.apache.http.entity.mime.MultipartEntity 发送。问题是,我实际上没有文件,只有 String 形式的内容。以下测试完美运行,其中 f
如何执行此代码以便它在后台线程中发送? // TODO: Send image in background HttpClient httpclient = new Defaul
我需要将其解析为 JsonArray 而不是对象但它似乎无法正常工作。 my output is ["{"TransactionVolume":"34","TransactionitemID":"2"
我想在我的 AndroidHttpClient 中实现一个 ProgressDialog。我在这里找到了一个简单的实现 CountingMultipartEntity . 另外我添加了内容长度支持。我
我尝试在 Android 中使用 MultiPartEntity 和 HttpClient 发送图像,但不断收到异常:java.lang.UnsupportedOperationException:
我正在尝试使用 HttpClient 和 MultipartEntity 将图像从 Adroid 应用程序上传到 php 网络服务器。 这是我的代码 fragment : protected Void
我现在有一个 Tomcat 实例,它接受上传并对数据进行一些处理工作。 我想用符合类似 API 的新 servlet 替换它。首先,我希望这个新 servlet 将所有请求代理到旧的 servlet。
我是一名优秀的程序员,十分优秀!