Angularjs Node.js-意外的重复post rest调用
技术堆栈:Angularjs Node.js-意外的重复post rest调用,angularjs,node.js,rest,sockets,koa,Angularjs,Node.js,Rest,Sockets,Koa,技术堆栈: Angular 1.4应用程序客户端,发布到: 节点5.1应用程序服务器(基于koa/es6的框架),发布到: 节点5.1微服务服务器(基于koa/es6的框架),它调用: Oracle 11.x存储过程 我们遇到了一个奇怪的问题,过去两天一直困扰着我们的开发团队。我们注意到,启动Oracle存储过程的microservice POST rest调用在第一次POST发生大约一分钟后(这是一个长时间运行的存储过程),会经历第二次相同的POST rest调用(但出乎意料)。我们将此重
- Angular 1.4应用程序客户端,发布到:
- 节点5.1应用程序服务器(基于koa/es6的框架),发布到:
- 节点5.1微服务服务器(基于koa/es6的框架),它调用:
- Oracle 11.x存储过程
我们目前的工作原理是,如果第一个库没有收到响应,那么混合库(可能是koa请求或请求)会启动第二个帖子。然而,在何处执行此操作以及如何关闭或扩展超时参数是一个谜。在这一点上,如果有人有类似的事情发生,并有任何建议,我将不胜感激。谢谢。完成这个过程通常需要多长时间?Angular应用程序是否一直在等待帖子完成?用户是否需要知道该过程是否成功完成或出错?Dan-SP过程可能需要10秒到几分钟的时间,具体取决于用户在angular应用程序中的选择。angular中的异步侦听器应该等待进程完成并向用户报告成功或失败。什么是“异步”侦听器?您是在使用WebSockets进行轮询,还是只是一个请求并等待?@Gatmando,现在也有同样的问题,试图从用户选择的日期获取excel文件,大约等待1分钟后,请求再次被调用。。。你是否也使用Express?JS?“F?BiasANtos我们使用的是膝关节炎(V1)框架,不表达。我们从来没有找到一个令人满意的方法来解决这个问题,而是在接收帖子的REST端点上写了一点hack。在受影响的路由处理程序上,我们指示它忽略第一个进程仍在运行时发生的后续相同帖子。它不漂亮,但很管用。我们根本没有时间或人力去进一步探索。这个过程通常需要多长时间才能完成?Angular应用程序是否一直在等待帖子完成?用户是否需要知道该过程是否成功完成或出错?Dan-SP过程可能需要10秒到几分钟的时间,具体取决于用户在angular应用程序中的选择。angular中的异步侦听器应该等待进程完成并向用户报告成功或失败。什么是“异步”侦听器?您是在使用WebSockets进行轮询,还是只是一个请求并等待?@Gatmando,现在也有同样的问题,试图从用户选择的日期获取excel文件,大约等待1分钟后,请求再次被调用。。。你是否也使用Express?JS?“F?BiasANtos我们使用的是膝关节炎(V1)框架,不表达。我们从来没有找到一个令人满意的方法来解决这个问题,而是在接收帖子的REST端点上写了一点hack。在受影响的路由处理程序上,我们指示它忽略第一个进程仍在运行时发生的后续相同帖子。它不漂亮,但很管用。我们根本没有时间或人力进一步探索。
module.exports.quarantineActions = function*(){
const opts = {
method: 'POST',
uri: transactionEndpoint+'/rest/quarantine-actions',
json:true,
body:this.request.body
};
console.log('POST to microservice initiated')
const resp = yield request(opts);
console.log('POST to microservice finsihed')
this.status = resp.statusCode;
this.body = resp.body;
};