蓝旭第六周预习(JSON数据类型+部分网络请求介绍+前后端api规范)


目录

一.JSON(JavaScript Object Notation)数据类型

1.含义

2.类型

(1)简单数据类型

字符

数字

布尔值

(2)复杂数据类型

数组

对象

二.部分网络请求介绍

定义

1.GET

2.POST

3.FTP 请求

4.post和get的区别如下 

三.前后端api规范


一.JSON(JavaScript Object Notation)数据类型

1.含义

JSON 是 Web 开发中使用最广泛的数据交换格式,它独立于编程语言,能够被大多数编程语言使用。

2.类型

JSON 中支持的数据类型可以分为简单数据类型和复杂数据类型两种,其中简单数据类型包括:string(字符串)、number(数字)、boolean(布尔值)和 null(空);复杂数据类型包括:Array(数组)和 Object(对象)。

(1)简单数据类型

  • 字符

JSON 中的字符串需要使用双引号定义(注意:不能使用单引号),字符串中可以包含零个或多个 Unicode 字符。另外,JSON 的字符串中也可以包含一些转义字符.

实例:

\\ 反斜线本身;

\/ 正斜线;

\" 双引号;

\b 退格;

\f 换页;

\n 换行;

\r 回车;

\t 水平制表符;

\u 四位的十六进制数字。

示例代码如下: 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>json的数据类型</title>
</head>
<body>
 <script>var jsonData={//字符串类型
    "name": "美合",  
  "age": 30,  
  "email": "meihe@example.com",  
  "address": {  
    "city": "新疆",  
    "street": "库车市"  
  },  
  "description": "这是一个JSON字符串的例子,其中包含了多种数据类型,如字符串、数字、对象等。"  
 }</script>   
</body>
</html>
  • 数字

JSON 中不区分整型和浮点型,只支持使用 IEEE-754 双精度浮点格式来定义数字。此外,JSON 中不能使用八进制和十六进制表示数字,但可以使用 e 或 E 来表示 10 的指数。

IEEE-754 表示二进制浮点数算术标准,是 20 世纪 80 年代以来使用最广泛的浮点数运算标准。

实例:

{
    "number_1" : 210,
    "number_2" : -210,
    "number_3" : 21.05,
    "number_4" : 1.0E+2
}
  • 布尔值

JSON 中的布尔值与 JavaScript、PHP、Java 等编程语言中相似,有两个值,分别为 true(真)和 false(假)

实例:

{
    "message" : true,
    "pay_succeed" : false
}

null(空)是 JSON 中的一个特殊值,表示没有任何值,当 JSON 中的某些键没有具体值时,就可以将其设置为 null

{
    "id" : 1,
    "visibility" : true,
    "popularity" : null//最终没有逗号
}

(2)复杂数据类型

  • 数组

JSON 中,数组由方括号[ ]和其中的若干值组成,值可以是 JSON 中支持的任意类型,每个值之间使用逗号, 进行分隔.

{
    "course" : [
        "JSON 教程",
        "JavaScript 教程",
        "HTML 教程",
        {
            "website" : "C语言中文网",
            "url" : "http://c.biancheng.net"
        },
        [
            3.14,
            true
        ],
        null
    ]
}

  • 对象

JSON 中,对象由花括号 { }以及其中的若干键/值对组成,一个对象中可以包含零个或多个键/值对,每个键/值对之间需要使用逗号,分隔.

实例:

{
    "author": {
        "name": "C语言中文网",
        "url": "http://c.biancheng.net/"
    }
}

二.部分网络请求介绍

定义

网络请求是指客户端给服务器发送的数据请求,用来实现客户端和服务器之间的数据交互。通常,这些请求由客户端发出,如网页浏览器、移动应用或其他类型的客户端软件,它们通过HTTP、HTTPS、FTP或其他协议与服务器进行通信。

在网络请求中,客户端发送一个包含所需信息或数据的请求到服务器。服务器接收这个请求,处理它,然后返回一个响应给客户端。这个响应可能包含请求的数据、状态信息或其他相关信息。

例如,当你在网页浏览器中访问一个网站时,你的浏览器会向该网站的服务器发送一个HTTP请求,请求获取网页的内容。服务器会处理这个请求,然后返回包含网页HTML、CSS、JavaScript等内容的HTTP响应。浏览器再解析这些响应内容,并在窗口中显示出来。

网络请求是实现互联网应用的基础,它们使得客户端能够获取、更新或删除服务器上的数据,实现各种在线服务的功能。

1.GET

ET请求通常用于从服务器获取数据。例如,当你在浏览器中访问一个网页时,浏览器会向服务器发送一个GET请求来获取该网页的内容。

GET /index.html HTTP/1.1  
Host: www.example.com //请求的服务器域名或ip地址//头部字段
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537 //请求头部(header) ,它提供了字符串,用来标识发起请求的用户代理(user-agent),即发起请求的软件或设备的名称和版本.这个头部信息对于服务器了解请求的来源,并根据不同的用户代理提供不同的内容或服务.//包含的信息:软件名称(Google Chrome),软件版本(Firefox92.0),操作系统(Windows),平台(x86),其他信息(可能包含设置,渲染版本)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8  //请求头部(header),它用于告诉服务器客户端能够处理的内容类型.这个头部信息帮助我们服务器决定发送哪种 类型的数据给客户端,以确保客户端能够正确的解析和接受到的数据//text/html(HTML文档)//application/xhtml+ xml(xhtml文档)//application/xml(xml文档)//"*/*"任何类型的文档//q表示质量因子,它是一个介于0和1之间的数字,用于表示客户端对某种媒体类型偏好程度,数值越高,表示偏好程度越高.如果没有指定值,默认值为1
Accept-Encoding: gzip, deflate, sdch, br  //请求头部(header),它用于告诉服务器客户端能够接受的内容编码(content encoding)类型.内容编码是一种压缩技术.可以包含多个编码.//gzip(使用GNU zip压缩算法 )//deflate(使用zlib压缩算法)//br(使用Brotli压缩算法)
Accept-Language: en-US,en;q=0.8 // 请求头部(header),它用于告诉服务器客户端能够理解和接受的语言类型//US(美国语言)//fr(法语)//de(德育)//en
Connection: keep-alive//请求头部(header),它用于告诉服务器与用户端之间的连接行为//keep-alive(告诉服务器客户端希望打保持连接打开,以便发送后续的请求.)//close(告诉服务器客户端希望在完成前请求后关闭连接.)//它会自动设置

2.POST

POST请求通常用于向服务器提交数据,例如提交表单或上传文件。

POST /submit_form HTTP/1.1  
Host: www.example.com  
Content-Type: application/x-www-form-urlencoded  
Content-Length: 27  
  
name=John+Doe&age=30

3.FTP 请求

FTP(文件传输协议)用于在服务器和客户端之间传输文件。在Java中,Apache Commons Net库常被用于实现FTP请求。

import org.apache.commons.net.ftp.FTPClient; //是编程中,特别是在许多面向对象的编程语言中,用来引入(或导入)模块、库或类的一个关键字。它允许你使用其他开发者编写的代码,从而避免重复造轮子,提高编程效率。 
  
FTPClient ftpClient = new FTPClient();  //一个用于与FTP(File Transfer Protocol,文件传输协议)服务器进行交互的客户端工具类。它允许用户连接到FTP服务器,进行文件的上传、下载、删除、重命名等操作。
ftpClient.connect("ftp.example.com");  
ftpClient.login("username", "password");  
ftpClient.listFiles(); // 列出服务器上的文件  
ftpClient.logout();  
ftpClient.disconnect();

注*:这些例子展示了不同类型的网络请求和它们的基本用途。在实际应用中,网络请求通常会涉及更复杂的逻辑和数据处理,例如身份验证、错误处理、数据解析等。同时,为了安全起见,发送敏感信息时应该使用HTTPS协议,并确保数据的加密和验证

4.post和get的区别如下 

post和get的区别

三.前后端api规范

前后端API规范是确保前后端开发人员能够顺利、高效地进行数据交互的关键。以下是一些常见的API规范:

  1. 接口描述:每个API都应有一个清晰、简洁的描述,说明其逻辑和作用,以便其他开发人员理解其功能。
  2. 接口地址:每个API都应有唯一的URL,包括正式URL和测试URL。需求方通过调用这些URL来获取响应内容。
  3. 请求方法:API的请求方法主要有GET、POST、PUT、DELETE等,分别对应不同的操作。例如,GET用于数据查询,POST用于数据提交,PUT用于数据更新,DELETE用于数据删除。
  4. 请求参数:这包括需要请求的字段名称、类型、是否必填等信息。请求参数应该设计清晰,并遵循一致的规范,输入参数应经过合理校验和验证。
  5. 响应内容:API应返回清晰、规范的响应内容,包括状态码、返回的数据、错误信息等。响应内容应使用统一的格式,如JSON,以方便前端解析。
  6. 错误处理与返回码:API应对可能发生的错误进行处理,并返回对应的错误码和错误信息。错误代码应对接口的错误进行归类,以便能快速找到错误原因并解决问题。
  7. 版本控制:为了兼容旧版客户端,应对API进行版本控制,确保不同版本的API可以共存和兼容。
  8. 文档和接口规范:API应有详细的文档和接口规范,包括API的用途、参数说明、返回结果等详细信息,以便前端开发者能够快速理解和使用API。

注*:此外,前后端API的设计还需要考虑性能、安全性、可扩展性等因素。例如,应尽量减少API的调用次数以降低延迟,提高服务效率;同时,应集成更多的第三方技术或API,以便创建更强大的平台;最后,API应满足消费者的需求,具有足够的灵活性以适应未来的变化。总之,前后端API规范是确保前后端顺畅交互的基础,通过遵循这些规范,可以提高开发效率,减少错误,提升用户体验。

  • 28
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值