我有一个单页项目, 我想提交表单,但是当我的 axios 请求尝试运行时收到 431(请求头字段太大)错误。 不知道还能尝试什么,所以如果有人有任何建议,那就太棒了!
我尝试过的事情:
set maxContentLength and maxBodyLength to Infinity,
added max-http-header-size
配置在哪里:
axios({
method: 'post',
url: 'http://example.com',
params: {a:b},
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
}).then(function (response) {
console.log(response)
}).catch(function (error) {
console.log(error)
})
当params的内容长度很小时,它起作用。
然而,当参数内容长度太大(如 14kb)时, 它收到 431 错误(请求头字段太大)
完整的 URL 如下所示:
http://localhost:9527/console/article/update?id=24321&title=%E5%8F%82%E4%B8%8E%E6%A0%87%E9%A2%9819000000061&image[]=&browseNumber=0&likeNum=1&shareNum=0&type=2&aspectType=0&status=1&userId=21334&admin=LZ000001&descStr=%E5%8F%82%E4%B8%8E%E5%86%85%E5%AE%B919000000061&roof=0&commodityIds[]=41&examine=1&htmlUrl=http:%2F%2Flocalhost:8080%2Fstatic%2Fhtml%2Fatlas%2B24321.html&isDel=0&sortNum=0&sortNo=0&createTime=2020-11-04+12:04:10&activityId=3&userNickName=iVQH4763&article=%3Cp%3E%E5%8F%82%E4%B8%8E%E5%86%85%E5%AE%B919000000061%3C%2Fp%3E&isLike=0&labelIds[]=8
我认为错误是由 url 的参数内容太大引起的。 而且我无法找出正确配置的方法。 任何帮助将不胜感激。谢谢!
答案 0 :(得分:1)
试着去做:
axios.post('http://example.com',
{
a:b
},
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});