最近,我已经从我的reactJS服务URL接收400错误,但我没有收到他们对我的其他微服务。 这里是我的尝试:
展望express
找出如果400错误是从那里,没有成功的到来。
挖掘到反应代码,没有400错误应该从那里来。
展望铬控制台....但它没有任何关系。
它甚至没有像我为我的服务器上接收到任何日志,以便就好像它从来没有打,所以没有记录在那里。
我的节点版本是10.15.3,但我所有的其他微服务是10.13.0。
为什么我会收到来自我的反应/快递NextJS的microService 400错误?
在2018年11月公关有人认为是最大头大小重大更改。 头只能在大小为8KB。
节点版本会影响都是v6.15.0,v8.14.0,v10.14.0,v11.3.0(见https://www.nearform.com/blog/protecting-node-js-from-uncontrolled-resource-consumption-headers-攻击/ )
你可以做两件事情之一......
减少v10.13.0
添加标记--max-http-header-size=10000
背景
为了避免DoS攻击的最大尺寸从80KB到8KB降低。 如果您在网站上有很多饼干,您将收到一个400错误没有太多的输出。 了解更多关于PR和讨论在这里: https://github.com/nodejs/node/issues/24692这里是PR( https://github.com/nodejs/node/commit/92231a56d9 )
测试
为了验证这一点,你可以用一个巨大的cookie是在8KB的卷曲请求,请您收到一个400错误。 调整该最大值后,它应该工作。