reactjs - Axios Post 调用在生产中出现 502 代理错误,其中请求是服务器正在发生并且成功响应
问题描述
任何人都可以帮忙,因为我无法重新创建这个问题来检查为什么会发生这种情况。我在我的反应应用程序中使用 axios 调用 rest api,我在开发和 uat 中找不到任何问题,但是当代码上线时,在生产中总是 axios 一个 post call 得到 502 代理错误但相同的请求是休息服务和后端一切都是成功的。所以,后端是成功的,但用户看到不成功的页面,因为它收到 502 错误。
一切网络和负载平衡器都找不到任何问题。
示例代码
this.postapi().then(function (response) {
//doing something
});
postapi() {
return axios.post('/postapi', {
// request data
}
}).catch(function (error) {
console.error(error);
if(error.response.status === 500 ){
//error page redirect
}else{
//unsuccess page redirect
}
});
}
从上面的代码中,总是 API 调用正在完成并且在 rest 服务中成功,但是得到 502 代理错误并要捕获块并显示不成功页面
这种行为只发生在生产中
环境:
Axios 版本 [例如 0.19.0]
浏览器 [例如 Chrome、Safari]
React 16.9.0
解决方案
推荐阅读
- flutter - 在颤振应用程序中保持嵌套页面持久
- php - 使用 HTML 复选框在 PHP 代码中动态创建 SQL 查询
- c++ - 使用动态库 qpOASES 和 CMakeList.txt 时未定义对 qpOASES 的引用
- elasticsearch - Painless Scripting Kibana 6.4.2 不使用匹配器匹配,但使用条件表达式匹配
- youtube - YouTube 可能会禁止您的非活动项目访问 YouTube 数据 API 服务
- sql - 使用 where 子句和最近的日期选择不同的
- java - 如何从 byte[] 反序列化对象,其中 byte[] 表示通过网络加载的类的对象?
- multithreading - 如果客户端只有一个核心 CPU,Web Worker 是否可以正常工作?
- python - 调用 mathplotlib 的 imshow() 的问题
- selenium - 如何在 Selenium (Java) 中使用 If-else 条件使 else 块中的条件起作用