使用Okhttp上传图片
来源:互联网 发布:股票买卖软件下载3.0 编辑:程序博客网 时间:2024/06/05 06:52
写项目的时候接触了上传图片这个模块。第一次使用OKhttputils上传图片时发现有时候上传成功,有时候失败报500错误,我纠结了一天,用postman测试接口是没有问题的,最后换回原生的okhttp框架去写。后来发现可能是之前的OKhttputils版本太低了导致的(2.6.2),现在用的Okhttp版本是(3.2.0)
private static final String TAG = "MainActivity";private Button btn_up;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn_up = (Button) findViewById(R.id.btn_up); btn_up.setOnClickListener(this);}private void upImage() { OkHttpClient mOkHttpClent = new OkHttpClient(); File file = new File(Environment.getExternalStorageDirectory()+"/HeadPortrait.jpg"); MultipartBody.Builder builder = new MultipartBody.Builder() .setType(MultipartBody.FORM) .addFormDataPart("img", "HeadPortrait.jpg", RequestBody.create(MediaType.parse("image/png"), file)); RequestBody requestBody = builder.build(); Request request = new Request.Builder() .url(url) .post(requestBody) .build(); Call call = mOkHttpClent.newCall(request); call.enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { Log.e(TAG, "onFailure: "+e ); runOnUiThread(new Runnable() { @Override public void run() { Toast.makeText(MainActivity.this, "失败", Toast.LENGTH_SHORT).show(); } }); } @Override public void onResponse(Call call, Response response) throws IOException { Log.e(TAG, "成功"+response); runOnUiThread(new Runnable() { @Override public void run() { Toast.makeText(MainActivity.this, "成功", Toast.LENGTH_SHORT).show(); } }); } });}@Overridepublic void onClick(View v) { Log.e(TAG, "onClick: " ); new Thread(new Runnable() { @Override public void run() { upImage(); } }).start();}
点击下载源码
0 0
- 使用Okhttp上传图片
- 使用OkHttp上传图片
- 使用OkHttp上传图片
- android 使用OkHttp上传多张图片
- android 使用OkHttp上传多张图片
- android 使用OkHttp上传多张图片
- Android okHttp图片上传
- Okhttp实现上传图片
- OKhttp上传图片
- Okhttp上传图片
- 使用OkHttp+popupwindow显示底部状态栏实现上传图片功能
- Android okhttp上传图片文件
- okhttp方法上传图片和接收图片
- Android中使用OKHttp上传图片,从相机和相册中获取图片并剪切
- okhttp2 和 okhttp 3上传单张或者多张图片的差异( 更好地理解使用okhttp )
- OKHttp上传图片实现,进度监听
- okhttp上传多张图片核心代码
- Android okhttp带参数上传单张图片
- 关于JavaScript中Get/Set访问器
- hdojP2011
- 根据进程id找窗口句柄
- PCA数学原理
- iOS view加虚线边框
- 使用Okhttp上传图片
- 对于大流量的网站,采用什么方法解决访问量问题
- android编译错误recipe commences before first target。 停止
- macOS使用 之 读写NTFS格式磁盘
- Spring3.1.0实现原理分析(七).填充Bean属性,初始化Bean,登记善后处理,注册单例Bean
- Codeforces Round #412 B. T-Shirt Hunt
- .Net MVCController 异步处理
- Mybatis对乐观锁的支持
- 一行代码解决各种IE兼容问题,IE6,IE7,IE8,IE9,IE10