Android 网络交互

网络交互

HTTP

请求/响应式的协议。
HTTP请求:客户端在与服务器端建立连接后,即可向服务器 端发送请求。
HTTP响应:服务器端接收到请求后做出响应。
特点:简单快速,灵活,无状态。
HTTP请求一般包括请求的Head和Body。请求方式为GET,POST,PUT,DELETE。

请求头说明
Host请求域名,可以是www开头的,也可以是IP+域名
Charset字符集
Connection是否保持长连接
From表单是POST锁必须和特有的(一般都放在请求Body中)
超时时间作为网络没有响应的等待限制,超时会默认给客户端显示Timeout异常

常见的状态码:
200:服务器成功处理了客户端的请求。
302:请求的资源临时从不同的URI响应请求,但请求这应继续使用原有位置进行以后的请求。
404:服务器找不到请求的资源。
500:服务器发送错误,无法处理客户端的请求。

HTTP如何进行请求与响应

HTTP请求:

URL realUrl = new URL(requestUrl);
//通过HttpURLConnection对象,向网络地址发送请求
HttpURLConnection conn = (HttpURLConnection)realUrl.openConnection();
conn.setDoOutput(true);//设置允许输出
conn.setUseCaches(false);//设置不使用缓存
conn.setRequestMethod("POST");//设置使用POST的方法发送
conn.setRequestProperty("Connection", "Keep-Alive");//设置维持长连接
conn.setRequestProperty("Charset", "UTF-8");//设置文件字符集
conn.setRequestProperty("Content-Length", String.valueOf(data.length));//设置文件长度
conn.setRequestProperty("Content_Type", "application/x-www-form-urlencoded");//设置文件类型
conn.setConnectTimeout(6*1000);

HTTP响应:

if(conn.getResponseCode()!=200){
  throw new RuntimeException("请求url失败");
}
InputStream is = conn.getInputStream();//得到网络返回的输入流
String result= readData(is, "GBK");//设置解码格式
conn.disconnect();//断开连接
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值