gpt4 book ai didi

reactjs - 如何修复 React-Redux 应用程序中的 431 请求 header 字段过大

转载 作者:行者123 更新时间:2023-12-03 13:43:41 24 4
gpt4 key购买 nike

我正在 YouTube 上使用 Redux 学习 MERN 注册/登录身份验证教程。当尝试在 Postman 中将测试用户 POST 到服务器时,我收到 431 header request is Too Large 错误响应。

我在一些地方读到清除浏览器中的缓存/历史记录是有效的,所以我尝试过但没有成功。我还在 header 请求中添加了“Clear-Site-Data”:“*”条目(除了“Content-Type”:“application/json”之外),但这也不起作用。

客户端注册代码

  onSubmit = e => {
e.preventDefault();
const { name, email, password } = this.state;

const newUser = {
name,
email,
password
};

this.props.register(newUser);
};

//redux actions
export const register = ({ name, email, password }) => dispatch => {

const config = {
headers: {
"Content-Type": "application/json",
"Clear-Site-Data": "*"
}
};

// Request body
const body = JSON.stringify({ name, email, password });

axios
.post('/api/users', body, config)
.then(res =>
dispatch({
type: REGISTER_SUCCESS,
payload: res.data
})
)
.catch(err => {
dispatch(
returnErrors(err.response.data, err.response.status, 'REGISTER_FAIL')
);
dispatch({
type: REGISTER_FAIL
});
});
};

用户注册应该将名称、电子邮件和密码发送到我连接的 Mongo 数据库,但是,它使我停止,并且 redux 命中我创建的 REGISTER_FAIL 类型,返回 431 错误。任何帮助将不胜感激。谢谢!

最佳答案

我在 Angular 应用程序中遇到了同样的问题。我花了很多时间才发现这个问题与Node.js有关。

我们使用的是 Node.js v12.x.x,在此版本中,max-http-header-size 减少为 8KB来自 80KB。我拥有的身份验证 token 约为 10KB。这就是为什么当我重新加载应用程序时,浏览器开始为某些文件提供 431 request header fields too large 错误。

我将 Node.js 更新为 v14.x.x,它再次开始工作,因为在 v14.0.0 中,max-http-header-size 已增加至 16KB

希望对您有所帮助。

关于reactjs - 如何修复 React-Redux 应用程序中的 431 请求 header 字段过大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57431355/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com