Android学习笔记——Android中的网络

目录

一、RESTful API——(Resource) REpresentational State Transfer(表层状态转移)

1.Resource:资源,即数据。

2.Representational

3.State Transfer

二、Json(org.json.JSONObject)

1.JSON简介

2.JSONObject

2.1 生成JSON字符串

 2.2 解析JSON对象

三、Android中的Gson

1.简介

 2.Gson使用

2.1 生成Json对象

2.2  解析JSON

 2.3 解析多个Json对象

四、Retrofit

1.简介

 2.用法

2.1 GET方法使用

 2.2 POST方法的使用


一、RESTful API——(Resource) REpresentational State Transfer(表层状态转移)

简言之,REST描述的是在网络中client和server的一种交互形式。

1.Resource:资源,即数据。

要让一个资源可以被识别,需要有个唯一标识,在Web中这个唯一标识就是URI(Uniform Resource Identifier)。

  • URI既可以看成是资源的地址,也可以看成是资源的名称。
  • URI的设计应该遵循可寻址性原则,具有自描述性,需要在形式上给人直觉上的关联。
  • 使用/来表示资源的层级关系,使用?用来过滤资源。

例如:

https://github.com/git https://github.com/git/git

https://github.com/git/git/blob/master/block-sha1/sha1.h

https://github.com/git/git/commit/e3af72cdafab5993d18fae056f87e1d675913d08

https://github.com/git/git/pulls

2.Representational

某种表现形式,比如用JSON,XML,JPEG等。

3.State Transfer

状态变化,通过HTTP动词实现(如Get、Post)。

二、Json(org.json.JSONObject)

1.JSON简介

Xml:可扩展标记语言(Extensible Markup Language,简称:XML)是一种标记语言。 标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。

我们所写的布局文件就是通过xml写的。

JSON(JavaScript Object Notation,JavaScript对象表示法。)是一种轻量级的数据交换语言,JSON是JavaScript的一个子集,但JSON是独立于语言的文本格式,即JSON 数据格式与语言无关,当前很多编程语言都支持 JSON 格式数据的生成和解析。

JSON支持多种数据类型:

2.JSONObject

  • 生成Json字符串
  • 解析Json

2.1 生成JSON字符串

 2.2 解析JSON对象

现实生活中,我们更多的时候是解析网络中传回来的JSON数据。网络中的数据在服务端大部分都是用字符串来存储JSON。

 JSONObject提供了get方法获取各种类型的JSON值。

上图所示,当获取一个不存在与JSON数据中的值时,如果使用get方法会报错。

上图所示,如果使用opt获取JSON数据,当该值不存在JSON数据中时,提供了一个fallback默认值,因此不会报错。

三、Android中的Gson

1.简介

 是由Google提供的,相比于Json繁琐的创建对象,然后不停地put,Gson更简单易用。

开源地址:

 2.Gson使用

2.1 生成Json对象

①Gson是一个第三方库,需要引入。

 创建一个Peple对象

然后创建一个Gson对象,调用toJson方法即可生成一个json字符串。

2.2  解析JSON

People里面再套一个People

 可以看到,当Peole里面嵌套了People对象,仍然可以解析。

 2.3 解析多个Json对象

四、Retrofit

1.简介

开源地址:

GitHub - square/retrofit: A type-safe HTTP client for Android and the JVM

 2.用法

2.1 GET方法使用

在Manifest中进行网络权限的注册。

 网上的开源免费api:玩Android - wanandroid.com - 每日推荐优质文章

 文章数据:

 使用retrofit创建一个api对象,然后调用getArticles方法,将返回的文章入队。

使用retrofit拿到response.body.articles可以直接获得文章对象,内部自动帮我们转换成了Gson,不需要我们自己写。

模拟器显示文章:

 2.2 POST方法的使用

实现注册功能

 Android Retrofit基本使用案例GET、POST_Dragon Wu的博客-CSDN博客

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值