速成班101
10 模块
5 周数

服务器响应和数据类型

点击复制

响应组件、状态代码、基本数据类型


来自服务器的Response几乎是按照与Request相同的方案工作的。由于显而易见的原因,它没有请求参数,但头信息和正文都包含在响应中(尽管它们可能是空的)。

一个重要的区别是响应的状态。

状态代码

状态代码。它出现在服务器响应的第一行。状态是一个三位数的数字(代码本身),后面是一个解释它的短语。

通过状态代码,你可以发现请求的结果,并了解接下来应该采取什么行动。

所有可能的状态代码被分为5类。代码的第一个数字决定了是否属于一个特定的类别。让我们把它们分解一下。

1xx- 信息代码。报告请求的进展。在实际操作中,它们很少被使用。

2xx--成功代码。它们报告说一切正常,请求已成功完成。在响应GET请求时,我们通常期望收到一个200(OK)代码。一个成功的PUT请求会发送一个201(创建)代码。

3xx- 重定向。表示请求应该被发送到一个不同的地址。一个例子是代码301(Moved Permanently),表示所需的数据现在在一个新的地址(新地址本身在Location头中传递)。

4xx- 客户端错误代码。其中最著名的是404(未找到),报告说在指定的地址没有必要的数据。其他常见的情况。400(坏请求,请求中的语法错误),401(未经授权,访问需要认证),403(禁止,拒绝访问)。

5xx- 服务器错误代码。报告服务器方面的错误。作为一个例子。500(内部服务器错误,任何无法归结为已知代码的不可理解的错误),503(服务不可用,服务器由于技术原因暂时无法处理请求)

数据类型

在这一点上,我们可以认为我们已经处理了理解REST API的基本信息以及HTTP请求和响应的结构。现在只剩下一点需要澄清--数据类型。如果你已经尝试在AppMaster中创建你的API请求,你可能注意到所有的数据(在参数中,在头文件中,在正文中)不仅要求你指定名称,而且还要求你指定数据类型。

Data types
对于人类来说,如何处理这些数据通常是非常明显的,因为有一定的背景。假设我们知道2+2=4。我们猜测这些是数字,加法的结果将是另一个数字。

但它可能不是数字,而是文本数据。那么它们相加的结果可能是字符串的连接,2+2会变成 "22"。在这里,为了使计算机不必考虑任何问题,有一个确切的数据类型指示。同时,其他任务也得到了解决。例如,提供保护以防止输入不正确的数据;最初,没有机会在用于输入电话号码的区域注册电子邮件地址。

有很多不同的数据类型,现在我们将考虑最基本的数据类型,在课程的后续模块中我们将熟悉其余的数据类型。

String- 字符串数据类型,没有特殊格式的纯文本。

Integer- 整数数据类型。可用于计数器或不需要小数的计算。

Float- 浮点数。它用于需要提高精度而整数值不够的地方。

这里可能会出现一个逻辑上的问题。为什么不总是使用Float,那为什么我们需要Integer?但更高的精度需要更多的资源。对于一些小的计算来说,这可能是完全看不到的,但是在大量数据的情况下,使用合理的数据类型可以大大降低对计算能力和磁盘空间的要求。

布尔- 布尔数据类型。最简单的数据类型。它取两个值中的一个,写成TrueFalse。你经常可以看到以1(真)和0(假)的形式指定。

Was this article helpful?
还在寻找答案吗?
加入社区