中止 DoJo XHR 请求

Posted

技术标签:

【中文标题】中止 DoJo XHR 请求【英文标题】:Abort DoJo XHR-Request 【发布时间】:2014-01-10 13:47:54 【问题描述】:

我正在为 HTTP 请求使用 dojo/request/xhr 模块。 是否可以像使用XMLHttpRequest 一样中止活动请求?

提前谢谢你, 弗兰克

【问题讨论】:

【参考方案1】:

dojo/request/xhr 返回的 Promise 有一个 cancel 方法(与普通 Promise 一样),它会中止 HTTP 请求。

var request = xhr("foo/bar").then(someHandler, someErrorHandler);
...
if(!request.isResolved()) 
    request.cancel(); // aborts request and triggers the error handler

此处示例:http://fiddle.jshell.net/QgWNA/

【讨论】:

您的解决方案有效。但是使用 XMLHttpRequest.abort() 也会停止相应的服务器进程。 request.cancel() 没有。是否可以额外停止服务器进程?

以上是关于中止 DoJo XHR 请求的主要内容,如果未能解决你的问题,请参考以下文章

使用 jQuery 中止 JSONP ajax 请求

如何中止获取请求?

中止多文件上传 AJAX 请求

如果 XHR 获得 abort(),我如何终止长时间运行的 Django 请求?

dojo / request / xhr text charset

是否可以通过 dojo 的 AMD 加载器向 dojo 模块请求添加请求参数