The root cause of the problem is that the MCU’s web server is based on lwIP, which is a lightweight socket framework that has many limitations. One of these limitations is that when the length of the request message exceeds TCP_MSS, the portion of the data that exceeds TCP_MSS becomes garbage data. This garbage data can cause the entire server to enter an unpredictable state.
To avoid this issue, a check was added for HTTP requests. When the length of the request message exceeds TCP_MSS, an error message is returned directly.
How can users work around this issue?
They can switch to a different browser, such as Firefox, or use an older version of Chrome, and ensure that the headers are kept below 600 characters.
Alternatively, they can use curl to initiate HTTP requests. For query-type interfaces, login state validation will not be performed. The URL needed for curl can be found in the jQuery section of the webpage source code (right-click in the browser to view the page source).