草庐IT

request-promise

全部标签

javascript - 取消 promise 链?

我链接了一系列的promise:this.getData.then(this.getMoreData).then(this.getEvenMoreData);在某些时候,用户可能会决定取消请求并请求其他内容。如何取消链的传播? 最佳答案 您必须检查每个链接方法内的状态(是否应取消):varuserRequestedCancel=false;this.getData().then(function(){if(userRequestedCancel){returnPromise.reject('usercancelled');}retu

javascript - 在 ES6 + babel 中使用 bluebird promise 导入类(构造函数)

假设我创建了一个node.js库lib.jsexportclassC{constructor(value,callback){callback(false,`Hello${value}`);}task(value,callback){callback(false,"returned"+value);}}重要的部分是类的构造函数需要接受回调,因为它处理数据库连接和文件I/O。如果我现在导入并使用库回调样式,一切都很好(请参阅下面的c1)。我真的很想promise我使用它的库,使对象构造更方便(实际上它是一大堆类和方法)。但是,我找不到在promise-safe中正确地new类的方法。im

javascript - for循环(每次迭代都会产生一个 promise )完成后如何返回单个 promise ?

我的promise返回代码有问题,我有一个函数getTagQuotes,它包含一个for循环,它可以多次调用API以将数据返回到数组中。我的代码是如何开始的://Iftherearetags,thenwaitforpromisehere:if(tags.length>0){//SettingpromisevartogetTagQuotes:varpromise=getTagQuotes(tags).then(function(){console.log('promise=',promise);//Thisarrayshouldcontain1-3tags:console.log('tw

javascript - Node JS Async Promise.All 问题

我正在尝试对从数据库中获取的列表中的一堆项目执行异步例程,但我无法理解promise.all的工作原理和作用。这是我现在使用的代码:/***Queuesuppriceupdates*/functionupdatePrices(){console.log("~~~NowupdatingalllistingpricesfromAmazonAPI~~~");//Grabsthelistingsfromthedatabase,thispartworksfinefetchListings().then(function(listings){//Createsanarrayofpromisesfr

javascript - HTTP Promise - 处理错误

我正在尝试找到一种很好的方法来处理我认为是错误的HTTP响应。我在ReactNative中使用fetch。这是我的代码。loginRequest(url){returnfetch(url,{method:'post',headers:{'Content-Type':'application/x-www-form-urlencoded;'},....}).then(response=>{returnthis.processResponse(response);});}然后……processResponse(response){if(response.status===200){retur

javascript - ES6 Promise 替换 async.eachLimit/async.mapLimit

在async,如果我需要将异步函数应用于1000个项目,我可以这样做:async.mapLimit(items,10,(item,callback)=>{foo(item,callback);});以便同时处理10个项目,限制开销并允许控制。使用ES6promise,虽然我可以轻松做到:Promise.all(items.map((item)=>{returnbar(item);}));这将同时处理所有1000个项目,这可能会导致很多问题。我知道Bluebirdhavewaystohandlethat,但我正在寻找ES6解决方案。 最佳答案

javascript - 调用 Promise.all 会抛出在非对象上调用的 Promise.all?

我正在尝试从promise中返回promise并像这样运行Promise.all:updateVideos().then(videos=>{returnvideos.map(video=>updateUrl({id:video,url:"http://..."}))}).then(Promise.all)//throwPromise.allcalledonnon-object如何使用这种Promise.all。我知道.then(promises=>Promise.all(promises))有效。但是,只是想知道为什么失败了。Expressres.json也会发生这种情况。错误信息不同

javascript - 在不使用 async/await 的情况下按顺序执行 promise 数组

假设我有一系列promise。我的数组中的每个元素都是一个knex.js查询生成器,并准备好执行并返回一个promise。如何按顺序运行此数组的每个元素。该数组是动态构建的。letpromisesArray=[q1,q2,q3];每个q本身不是一个promise,但它会在执行时返回一个promise。 最佳答案 这里可能是一个可能的选择:letp=Promise.resolve([]);promisesArray.forEach(q=>{p=p.then(responses=>{//basedonthenatureofeachq,t

javascript - 我的 promise 不再适用于 jQuery 1.8

此代码片段在1.7.2中适用于成功/错误回调以及promise样式回调。在1.8.2中,成功/错误回调仍然有效,但promise无效。我的预感是returndfd.promise(jqXHR);行是问题所在,但我不确定。$.ajaxPrefilter(function(options,originalOptions,jqXHR){//Don'tinfinitelyrecurseoriginalOptions._retry=isNaN(originalOptions._retry)?Common.auth.maxExpiredAuthorizationRetries:originalOp

javascript - UIWebView 产生大约 :blank requests when iframe appended

这段简单的代码variframe=document.createElement('iframe');文档.documentElement.appendChild(iframe);由UIWebViewstringByEvaluatingJavascriptFromString注入(inject)使用about:blank调用UIWebViewDelegateshouldStartLoadWithRequest。有趣的是,它仍然将mainDocumentURL设置为注入(inject)时存在的文档。对我来说,这意味着我无法随时注入(inject)此类代码-重新进入shouldStartLo