为了账号安全,请及时绑定邮箱和手机立即绑定

Android中的Http通信

难度中级
时长 4小时11分
学习人数
综合评分9.47
108人评价 查看评价
9.8 内容实用
9.4 简洁易懂
9.2 逻辑清晰
  • doHttpClientGet() +注释
    查看全部
  • doHttpClientPost()
    查看全部
  • doHttpClientGet()
    查看全部
  • 字符转码,解决中文乱码
    查看全部
  • servlet程序
    查看全部
  • doPost() 1
    查看全部
  • doGet() 放在run方法中
    查看全部
  • 摘自评论区: AS要使用这两个过时包可以在Gradle(Module:app)中做如下尝试: 首先在android{}里添加如下内容: android { useLibrary 'org.apache.http.legacy' packagingOptions{ exclude 'META-INF/DEPENDENCIES' exclude 'META-INF/NOTICE' exclude 'META-INF/LICENSE' } } 然后在dependencies{}中添加这两个包: dependencies { compile group: 'org.apache.httpcomponents', name: 'httpcore', version: '4.4.4' compile group: 'org.apache.httpcomponents', name: 'httpmime', version: '4.4' }
    查看全部
  • 通过 HttpClient 上传文件的实现步骤 1. 导入jar包:将 httpcore-4.4-beta1.jar 和 httpmime-4.4-beta1.jar 拷贝到项目的 libs 目录下。 给项目配置 Java Build Path,在libraries 一栏选择“Add JAEs”--> 选择项目的libs目录下的jar包(就是刚才那两个),点击OK --> 点击OK,就可以了。 2. 将上节课的 UploadThread 的 run()方法内部代码剪切到新建的方法: private void httpUpload(){}里面。目的是要与新的方法做一下对比。 3. 再定义一个方法,通过HttpClient上传文件。如图,是 uploadHttpClient() 的编写 4. 在原来的run()中,只调用 uploadHttpClient()。 通过对比,可以很明显的发现,通过 HttpClient 实现文件上传要比之前的方法(现在写在httpUpload()里面)要简单。无需自己去封装请求协议(封装http协议很容易出错,必须严格按照格式编写)。所以,用 HttpClient 开发是比较快捷方便的,代码量也比较少,主要是创建 MultipartEntity 和 FileBody 对象,将 FileBody 添加到 MultipartEntity中。
    查看全部
  • 使用浏览器(本例是IE浏览器)的开发者选项查看在上传文件的过程中,请求正文的格式是怎么样的。 然后严格按照这中格式去拼装请求的实体数据,尤其是在本例中,末尾的边界比开头的边界要多出一个“--”的前缀和后缀,很容易被遗漏(一旦遗落,服务器是无法识别的)。另外也必须注意到换行,前面是换一行,后面是换两行。这些细节都不允许有误。 在Content-Description当中,需要使用转义字符“\”去转义引号。 相关代码(数据的拼装)如下: String boundary="---------------------------7de2c25201d48"; String prefix="--"; // 定义前缀(后缀) String end="/r/n"; conn.setRequestProperty("Content-Type","multipart/form-data;boundary"+boundary); // 通过 multipart 协议向服务器发送数据 // 创建输出流对象 DataOutputStream out = new DataOutputStream(conn.getOutputStream()); out.writeBytes(prefix+boundary+end); out.writeBytes("Content-Description:form-data;name=\"file\";filename=\""+"Sky.jpg"+"\""+end); out.writeBytes(end); 。。。接下来的部分就是实体数据。
    查看全部
  • Servlet的编写(文件上传) 注意这里的文件类型为“Part”。 part.write(); 指定文件保存的名称。
    查看全部
  • 服务器首页的编写
    查看全部
  • 模仿迅雷多线程下载 1. Http协议字段 Range "bytes=" + start + "-" + end,向服务器请求指定长度的流信息。 2. RandomAccessFile 设置写入的位置 3. 开启线程发送网络请求
    查看全部
  • 在手机端解析服务器的xml文件,run()方法的部分编写: XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); XmlPullParser parser = factory.newPullParser(); parser.setInput(in,"utf-8"); //解析输入流 /* 小知识:pull解析是基于事件驱动 */ int eventType = parser.getEventType(); //获取事件类型 final List<Girl> list = new ArrayList<Girl>(); Girl girl = null; //根据事件类型进行处理 while (eventType != XmlPullParser.END_DOCUMENT){ //END_DOCUMENT 文档的结束位置 String data = parser.getName(); //获取xml文件中的标签名 switch (eventType){ // 根据事件类型进行处理 case XmlPullParser.START_TAG: if ("girl".equals(data)){ //如果起始标签是“girl”,则创建Girl对象 girl = new Girl(); } if ("name".equals(data)){ //如果起始标签是“name”,则给girl赋值 girl.setName(parser.nextText()); //parser.nextText取出当前标签对应的值 } if ("age".equals(data)){ girl.setAge(Integer.parseInt(parser.nextText())); } 。。。依此类推 case XmlPullParser.END_TAG: if ("girl".equals(data) && girl!=null){ list.add(girl); } break; } eventType = parser.next(); //开始下一次循环 } 然后通过 handler 向主线程发送消息,更新UI。
    查看全部
    0 采集 收起 来源:http处理xml文件

    2018-03-22

  • Json是一种轻量级的数据交换格式,它是基于JavaScript的一个子集。 Json的格式:一个花括号,里面指定一个名和一个值就可以了,例如: {"name":"Lucy"} 实际上的格式是非常多样、非常灵活的。 --------------- 如图是添加 json 信息的部分代码
    查看全部
    0 采集 收起 来源:什么是json格式

    2018-03-22

举报

0/150
提交
取消
课程须知
本课程是Android初级课程 1、熟练掌握基本的Android应用程序开发方法 2、熟练掌握Android中数据请求的方式 3、明白get请求和post请求的区别和联系
老师告诉你能学到什么?
1、了解http基本协议 2、掌握http交互请求,例如post、和get请求 3、使用代码实现Android中的post和get请求

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!