AndroidDay05-网络编程之文件上传

(8条消息)Android OKHttp3的使用和下载/上传图片 - shaomingshan的博客 - CSDN博客

我们提供的服务有:做网站、网站制作、微信公众号开发、网站优化、网站认证、吉水ssl等。为上1000+企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的吉水网站制作公司

https://blog.csdn.net/Mr_Tony/article/details/61619574 (OkHttp3获取responseHeader)


Android文件上传实现

  分析:利用抓包工具查看文件上传发现,文件上传的请求体十分的复杂,根本难以用

    HttpURLConnection、HttpClient来实现。但是用AsyncHttpClient就能很轻易的实现了,只要

    在RequestParams对象里面添加一对键值对,值存储文件的路径即可上传了。

  AsyncHttpClient文件上传源代码:

     记得先要导一下包

    //创建AsyncHttpClient对象
    AsyncHttpClient asyncHttpClient = new AsyncHttpClient();
        
        //创建RequestParams对象,封装要上传的数据或文件。
	RequestParams params = new RequestParams();

	params.put("music", uploadFile); // Upload a File
        //执行post方法。
        
        //注意最后一个类new的是参数子类的的实现类AsyncHttpResponseHandler
	asyncHttpClient.post(getApplicationContext(), servletPath,
				params, new AsyncHttpResponseHandler() {

		@Override
		public void onSuccess(int statusCode,Header[] headers, byte[] responseBody) 
		{
			if(statusCode == 200)
			{
				Toast.makeText(getApplicationContext(), "文件上传成功", 0).show();
			}
			else
			{
				Toast.makeText(getApplicationContext(), "服务器忙", 0).show();
			}
		}

		@Override
		public void onFailure(int statusCode,Header[] headers, byte[] responseBody,Throwable error) 
		{
		
		}
	});

   

  • 文件下载

    httpurlconnection下载demo (httpUrlConnection下载demo)

    https://github.com/guozhengXia/UrlHttpUtils  (HttpUrlConnection集成式方案,很稳定,但是不支持https和超时等参数设置,需要自行封装。)

    https://blog.csdn.net/xiahuale/article/details/82382879 (httpsUrlConnection增加证书)

    https://www.iteye.com/blog/fucepeng-2151784 (证书找不到的问题)


文章名称:AndroidDay05-网络编程之文件上传
文章地址:http://azwzsj.com/article/gsjgjh.html