来自NodeJS的空POST请求?

时间:2015-12-14 08:24:34

标签: node.js post express

我在NodeJS中有两个应用程序。一个进程处理一些数据,第二个发送POST请求,其中一个文件附加到ExpressJS应用程序。一切正常,但我有一个奇怪的情况。获取并处理POST请求后,收到请求的应用程序将出现奇怪的日志:

14:23:07 web.1 | POST / - - ms - - 14:23:09 web.1 | POST / - - ms - - 14:23:11 web.1 | POST / - - ms - - 14:23:12 web.1 | POST / - - ms - - 14:23:14 web.1 | POST / - - ms - - 14:23:15 web.1 | POST / - - ms - -

如果我做了10个请求,应用程序将接收它们,处理它们,一段时间后将开始接收这个奇怪的空请求。例如:随着时间的推移,10个请求将产生10个空的请求(不是立即)。

如果我在发送最后一个请求后立即终止发出POST请求的应用程序(发送文件)(例如我们制作了10个请求),接收应用程序将充满剩余的空请求。

知道造成这种情况的原因是什么?

技术规格

发布应用

  • NodeJS 4.1.1
  • 用于发出POST请求的表单数据模块
  • 发布POST的代码

    function webhook(url,referenceId,stream){     var form = new FormData();     form.append(' referenceId',referenceId);     form.append(' pdf',stream);

    form.submit(url, function(err, response) {
        console.log(response);
    });
    

    }

恢复应用

  • NodeJS:4.1.1
  • ExpressJS:4.13.1
  • 用于处理POST请求中的文件的Multer模块

1 个答案:

答案 0 :(得分:2)

当您不响应状态消息时,会发生此问题。添加

Final_Table['AlertID'] = ''
Final_Table['AlertTimestamp'] = datetime.now().strftime('%d-%m-%Y %H:%M:%S')
Final_Table['MasterDataType'] = 'Vendor'
Final_Table['RuleID'] = 'Rule3'
Final_Table['RuleName'] = 'Vendor and Bank Country is Different'
Final_Table = Final_Table.rename(columns={'LIFNR': 'MasterDataID'})


Result = Final_Table[Final_Table['BANKS'] != Final_Table['LAND1']]

Result['OtherData'] = np.NaN


final_result = {'alerts': json.loads(Result.to_json(orient = 'records',force_ascii = False).encode('utf8'))}
result = {'results': final_result}

with open('output_Rule3.json', 'w') as outfile:
    json.dump(result, outfile, indent = 5, sort_keys = True)
log.info("Rule3 : Execution Successful")

处理完请求后,会在您的接收应用中显示正确的日志。