【发布时间】:2021-03-03 07:10:03
【问题描述】:
我在 React 应用程序前端有以下 axios 帖子:
import axios from "axios";
import { backendServer, getAuthHeader, getErrorMessage } from "./constants";
const connectPath = (host, port, database, user, password) => {
const requestString = backendServer + 'connect/';
const form = {
host: host,
port: port,
database: database,
user: user,
password: password
}
return axios.post(requestString, form, getAuthHeader())
.then((Response) => {
return {
connection: Response.data,
message: null
}
})
.catch((Error) => {
return getErrorMessage(Error);
})
}
export const paths = {
connectPath,
}
还有这个 flask-restful 后端类:
class Connect(Resource):
def post(self):
try:
data = json.loads(request.data)
except:
data = request.form
connect(
data['host'],
data['port'],
data['database'],
data['user'],
data['password']
)
return {'data': "ok"}
api.add_resource(Connect, '/connect/')
我可以看到前端请求被后端正确处理:
但是,尽管如此,axios 帖子总是返回到catch((Error))。
当从 flask-restful 返回 200 时,我不知道如何让 axios 去then(Response)。
编辑
这是我在检查器的network 选项卡中得到的:
【问题讨论】:
-
从 FE 发出的网络请求是什么样的?您可以在网络选项卡中看到它。在您的问题中看到这一点会有所帮助
-
@topched 我添加了它
-
响应头中没有 200 OK 所以 axios 认为它不好
-
@topched 我知道,我想知道的是如何让flask-restful返回200。我尝试在返回值后添加
, 200,但什么也没发生
标签: reactjs axios flask-restful