前言:
当一个手机应用需要连接外部世界的时候,网络请求就必须要学习了。百度虽然是有点用,但对于新人来说都特默什么乱七八糟的东西!所以我将最近学习的关于网络请求的内容分享给大家,以期大家避开我走过的弯路。
简单总结一下:
客户端如何把需要发送的请求发给服务端呢?首先,后台服务端的开发人员会根据业务需求将接口给出,接口中对应了数据的键(key),客户端开发人员将数据的值(value)传到接口对应的键即可完成对后端数据的请求。
本文的请求操作是,在客户端把账号密码发送给服务端,从而达到登录一个应用的目的,当登录成功后,会在手机上提示登录成功字样,以此检验网络请求的有效性。对于客户端开发人员来说,起码要知道如何将数据发送过去从而获取服务端的响应。下面,我们就开始来做这件事。
首先,我们先来看看如何使用这个东西,先看,不要写,然后按照后面叙述的步骤来操作。
使用:在Activity中实现网络请求的过程
使用网络请求,就是这么简单!
结果是不是的确请求成功?看一看效果
点击登录之前:
点击登录之后:
现在开始学习如何封装这个请求框架,请按照以下步骤搭建此网络请求框架。
步骤1:
添加OkHttp的依赖 :compile'com.squareup.okhttp3:okhttp:3.6.0'
添加OkHttpfinal的依赖:compile'cn.finalteam:okhttpfinal:2.0.7'
(一个叫彭建波的大神开源的)
添加Gson的依赖
compile 'com.google.code.gson:gson:2.7'
步骤2 :
设置常量
步骤3:
新建基础实体类BaseBean
步骤4 :
新建一个网络请求配置类NetKnifeConfig
步骤5 :
新建网络请求数据回传类NetKnifeResponse
这个类内容有点多,分两张图
下半部分重点来了
步骤6 :网络请求的回调类NetKnifeCallback
步骤7 :
就是最终我们要完成的网络请求的管理类
该类内容也比较多,截图两张
其中有更新公共Header/下载网络文件等方法,本文不讨论,开发中都能用到,我们就看post请求。
上半部分
下半部分
post就是我们要着重学习的请求方式
步骤8 :
新建全应用传值的BaseApplication
这个类注意要在清单文件中添加他的name属性
步骤9 :
看看清单文件的内容,不要忘了添加网络访问权限
最后提醒 :
本文是新建的一个项目,然后就开始搭建网络框架,现在完成后,看看我们的项目结构是什么样子了
结束。