必须在包含函数上使用async关键字才能在函数体内使用await。
async function fetchMovies() {
const response = await fetch('/movies');
console.log(response);
}
fetchMovies();
Run Code Online (Sandbox Code Playgroud)
在AWAIT被用来对异步完成方框取()调用。从代码中可以看出,函数fetchMovies()甚至没有返回任何值。即使这样做了,它也会影响调用者使用返回值的方式,但是为什么它会影响从函数体调用另一个异步调用呢?
我的问题是为什么需要这样做?有什么好的解释吗?它是否与实际实现await的需要有关,并在旧的 JavaScript 版本中支持它?
我知道使用了iffi模式能够使用await但这是否会以任何方式更改iffi代码块后面的代码的语义?
(async () => {
const response = await fetch('/movies');
console.log(response);
})();
Run Code Online (Sandbox Code Playgroud)
我也知道模块中支持顶级等待。
可能是我错过了一些非常明显的东西。
标准说:
10.5.4 503 服务不可用。由于服务器暂时超载或维护,服务器当前无法处理该请求。这意味着这是暂时的情况,延迟一段时间后就会得到缓解。
参考:https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
如果服务器在数据库访问级别存在锁争用,那么服务器在这种情况下是否应该返回 503。或者 503 状态的含义是:
在其他什么情况下返回 HTTP 状态 503 是有意义的。
非常感谢任何详细的澄清。