引言

  OkHttp作为时下最火的http框架,以它的轻量级、高效率的优势,深受广大开发者的喜爱,使用它的人越来越多。说到这我就比较惭愧了,因为我最近才开始学习OkHttp,经过一番学习,掌握了OkHttp的基本使用,下面我就介绍一下OkHttp的基本用法。

配置方法

(一)导入jar包

点击下面链接下载OkHttp最新jar包
https://repo1.maven.org/maven2/com/squareup/okhttp3/okhttp/3.9.1/okhttp-3.9.1.jar

(二)通过构建方式导入

MAVEN

GRADLE

请求和响应

Request(请求)

  每一个HTTP请求中都应该包含一个URL,一个GET或POST方法以及Header或其他参数,当然还可以含特定内容类型的数据流。

Responses(响应)

  响应则包含一个回复代码(200代表成功,404代表未找到),Header和定制可选的body

基本使用

  在日常开发中,最常用到的网络请求就是POST和GET两种请求方式。

Http GET

上面这段代码中,Request是OkHttp中访问的请求,Builder是辅助类,,Response即OkHttp中的响应。

Response类:

可以方便的获取String:

获取流:

Http POST

对于POST方式,我们最常提交的就是json数据和键值对了,我们来看看这两种情况怎么写。

POST提交Json数据

使用Request的post方法来提交请求体RequestBody。

(这里附上OkHttp MediaType的使用:)

POST提交键值对

Demo

  下面是我写的一个小demo,就是通过提交用户名和密码到服务器来登录的一个小案例。使用了GET和POST两种方式。

布局文件

Activity

看完上面的代码,大家可能会有疑问,为什么和我开始列举的写法不一样呢,因为这个demo里面我用的是异步的方式。异步方式也很简单,就是将Request加入调度,然后等待任务执行完成,在Callback中可以直接得到结果,我写个小例子方便大家更直观的理解:

好,移动端代码写完了,们看下效果:

没错,就是这么一个简单的界面了。下面附上服务端代码,这里我就写了个简单的serverlet,然后部署到了tomcat上,如下:

移动端和服务端代码都有了,下面我们来测试下(由于我部署到tomcat上,我这里是把移动端安装到手机上,然后用手机连接笔记本的wifi进行测试的,IP地址ipconfig获取一下就好。):



图1.GET方法登录成功



图2.GET方法登录失败



图1.POST方法登录成功

好了,OkHttp的基本使用我就讲到这里了,因为更深层次的我还需要继续学习呀,下面附上官方的OkHttp官方Recipes链接:https://github.com/square/okhttp/wiki/Recipes,我们共同学习。最后欢迎指正,感谢阅读。

发表评论

电子邮件地址不会被公开。 必填项已用*标注