我有一个API,该API会返回较大的响应(〜5000条记录,每条记录具有大约40个属性) 我正在使用express(4.16.3)和swagger-tools(0.9.16)进行验证。 我今天发现了一些不同的东西。记录数量增加时,API需要花费大量时间。 我这样设置数据和响应
res.status(200).json(data);
其中data是JSON响应。 我发现在这里https://github.com/expressjs/express/blob/master/lib/response.js#L260-L267
中表达了表达的回应响应类型定义为此端点的数组。 但是在https://github.com/apigee-127/swagger-tools/blob/master/lib/validators.js#L613-L624这里的代码中, 我可以看到,如果它是一个数组,它将遍历数组中的每个元素。 但是在我们的例子中,由于express已将响应字符串化,因此它将接受每个字符并对其进行验证。 由于响应中大约有200万个字符,因此需要一段时间(约15秒)才能获得响应。 有人用招摇工具注意到这种行为吗?谢谢。