Javascript http请求是否始终完成?

Javascript http请求是否始终完成?,javascript,http,Javascript,Http,如果发出了http请求,而调用方放弃了该请求,那么该请求是否已完成?例如,异步JavaScript GET请求在DB中记录横幅单击,然后重定向。脚本是否需要等待响应?您应该等待响应安全。您永远不知道服务器什么时候开始处理您的请求(虽然通常在几百毫秒或更短的时间内),因此除非等待,否则您将不知道是否有超时、失败或是否将收到与预期不同的响应。您应该等待它安全。你永远不知道服务器什么时候开始处理你的请求(虽然通常是在几百毫秒或更短的时间内),所以你不知道是否有什么东西超时,失败,或者,除非等待,否则您

如果发出了http请求,而调用方放弃了该请求,那么该请求是否已完成?例如,异步JavaScript GET请求在DB中记录横幅单击,然后重定向。脚本是否需要等待响应?

您应该等待响应安全。您永远不知道服务器什么时候开始处理您的请求(虽然通常在几百毫秒或更短的时间内),因此除非等待,否则您将不知道是否有超时、失败或是否将收到与预期不同的响应。

您应该等待它安全。你永远不知道服务器什么时候开始处理你的请求(虽然通常是在几百毫秒或更短的时间内),所以你不知道是否有什么东西超时,失败,或者,除非等待,否则您将收到与预期不同的响应。

客户端不会向服务器发送任何取消请求的通知

PHP不知道客户端是否已断开连接,直到它尝试向客户端发送一些数据(例如,无缓冲的
echo()
调用),因此如果您的脚本没有向用户返回任何数据,它将完全执行。如果它确实返回数据,它可能会中途中止,但这可以通过
ignore\u user\u abort()
进行更改
如果您使用的是不同的环境,则必须浏览文档。

客户端不会向服务器发送任何取消请求的通知

PHP不知道客户端是否已断开连接,直到它尝试向客户端发送一些数据(例如,无缓冲的
echo()
调用),因此如果您的脚本没有向用户返回任何数据,它将完全执行。如果它确实返回数据,它可能会中途中止,但这可以通过
ignore\u user\u abort()
进行更改
如果您使用的是不同的环境,则必须浏览文档。

对于大多数情况,一旦服务器收到请求,如果客户端停止侦听,则不会停止处理


但是,服务器在为请求提供服务时总是会失败,因此假设请求已完成可能不是一个好主意。

对于大多数情况,一旦服务器接收到请求,如果客户端停止侦听,则不会停止处理


但是,服务器在为请求提供服务时总是会失败,因此假设请求已完成可能不是一个好主意。

您的请求有多重要?如果当时数据库不可用怎么办?如果服务器端代码引发异常怎么办


对于非常关键的请求,您可能需要实现某种消息队列,以便能够保存请求数据,直到完全处理为止。如果您正在处理网格和云,这将变得更加复杂(您不能只在单个节点上对消息进行排队,因为该节点可能存在硬件故障)。但这是一个极端的情况,在这种情况下,您将使用专用的队列服务器。

您的请求有多重要?如果当时数据库不可用怎么办?如果服务器端代码引发异常怎么办


对于非常关键的请求,您可能需要实现某种消息队列,以便能够保存请求数据,直到完全处理为止。如果您正在处理网格和云,这将变得更加复杂(您不能只在单个节点上对消息进行排队,因为该节点可能存在硬件故障)。但这是一个极端的情况,在这种情况下,您将使用专用的队列服务器。

您不必等待响应,请求就可以到达服务器。服务器可以在处理请求时检查是否有人仍在侦听,但即使没有人在侦听响应,也会开始处理请求(当然,除非在处理过程中出现错误)


如果您想确保请求确实得到了处理,您应该等待响应,但请求不需要经过服务器。

您不必等待响应才能到达服务器。服务器可以在处理请求时检查是否有人仍在侦听,但即使没有人在侦听响应,也会开始处理请求(当然,除非在处理过程中出现错误)

如果您想确保请求确实得到了处理,您应该等待响应,但请求不需要通过服务器