JavaScript 中的异步机制以及http状态码

简介: JavaScript 中的异步机制以及http状态码

1.JavaScript 中的异步机制

JavaScript 中的异步机制可以分为以下几种:

回调函数 的方式,使用回调函数的方式有一个缺点是,多个回调函

数嵌套的时候会造成回调函数地狱,上下两层的回调函数间的代码耦

合度太高,不利于代码的可维护。

Promise 的方式,使用 Promise 的方式可以将嵌套的回调函数作为

链式调用。但是使用这种方法,有时会造成多个 then 的链式调用,

可能会造成代码的语义不够明确。

generator 的方式,它可以在函数的执行过程中,将函数的执行权转

移出去,在函数外部还可以将执行权转移回来。当遇到异步函数执行

的时候,将函数执行权转移出去,当异步函数执行完毕时再将执行权

给转移回来。因此在 generator 内部对于异步操作的方式,可以以

同步的顺序来书写。使用这种方式需要考虑的问题是何时将函数的控

制权转移回来,因此需要有一个自动执行 generator 的机制,比如

说 co 模块等方式来实现 generator 的自动执行。

async 函数 的方式,async 函数是 generator 和 promise 实现的

一个自动执行的语法糖,它内部自带执行器,当函数内部执行到一个

await 语句的时候,如果语句返回一个 promise 对象,那么函数将

会等待 promise 对象的状态变为 resolve 后再继续向下执行。因此

可以将异步逻辑,转化为同步的顺序来书写,并且这个函数可以自动

执行。

2.http状态码

1xx(临时响应)

表示临时响应并需要请求者继续执行操作的状态代码

2xx (成功)

表示成功处理了请求的状态码。
3xx (重定向)

表示需要进一步操作完成请求

4xx(请求错误)

表示请求可能出错,妨碍了服务器的处理

5xx(服务器错误)

表示服务器在尝试处理请求时发生内部错误,这些错误可能是服务器本身的错误,而不是请求出错。

常见的状态码有:

200 :获取数据成功

201 :成功请求并且创建了新的资源

301 :永久移动,请求的网页已永久移动到新位置。 服务器返回此响应时,会自动将请求者转到新位置。

302 :临时移动,服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。

304 :未修改,自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。

404 :请求的网页不存在

500 :服务器内部错误,服务器遇到错误,无法完成请求。  

503 :服务不可用,服务器目前无法使用(由于超载或停机维护),通常只是暂时状态。


相关文章
|
14天前
|
存储 JavaScript 前端开发
深入理解JavaScript中的事件循环(Event Loop):机制与实现
【10月更文挑战第12天】深入理解JavaScript中的事件循环(Event Loop):机制与实现
44 3
|
27天前
|
开发者
深入了解HTTP状态码
深入了解HTTP状态码
166 64
|
2月前
|
JavaScript 安全 前端开发
乾坤js隔离机制
乾坤js隔离机制
|
2天前
|
消息中间件 JavaScript 中间件
深入浅出Node.js中间件机制
【10月更文挑战第24天】在Node.js的世界里,中间件如同厨房中的调料,为后端服务增添风味。本文将带你走进Node.js的中间件机制,从基础概念到实际应用,一探究竟。通过生动的比喻和直观的代码示例,我们将一起解锁中间件的奥秘,让你轻松成为后端料理高手。
|
6天前
|
网络协议
Lua中实现异步HTTP请求的方法
Lua中实现异步HTTP请求的方法
|
25天前
|
缓存 网络协议 JavaScript
【HTTP】构造HTTP请求和状态码
【HTTP】构造HTTP请求和状态码
42 1
【HTTP】构造HTTP请求和状态码
|
17天前
|
前端开发 JavaScript 开发者
JS 异步解决方案的发展历程以及优缺点
本文介绍了JS异步解决方案的发展历程,从回调函数到Promise,再到Async/Await,每种方案的优缺点及应用场景,帮助开发者更好地理解和选择合适的异步处理方式。
|
28天前
|
缓存 应用服务中间件 nginx
你知道 HTTP 的状态码都有哪些吗?它们的含义又是什么呢?
你知道 HTTP 的状态码都有哪些吗?它们的含义又是什么呢?
40 8
|
26天前
|
JSON JavaScript 中间件
深入浅出Node.js中间件机制
本文将带你探索Node.js中一个核心概念——中间件机制。我们将通过浅显的语言和生动的比喻,揭示中间件如何作为请求和响应之间的“交通枢纽”,在应用程序中起到至关重要的作用。从基础原理到实际应用,你将了解到中间件不仅简化了代码结构,还提高了开发效率,是Node.js开发不可或缺的一部分。
33 1
|
13天前
|
JavaScript 前端开发 开发者
原型链深入解析:JavaScript中的核心机制
【10月更文挑战第13天】原型链深入解析:JavaScript中的核心机制
23 0