我试图通过axios从后端到前端获取函数结果,但每次都返回404。
我设法向后端发送请求并激活函数,但在获取结果时,它开始返回404
应用程序中的路由
import cardRoute from './routes/test';
const app = express();
app.use('/test', cardRoute);
./routes/test.ts(backend)
函数test_load()返回字符串
import express from 'express';
import { test_load } from '../cardpull';
const router = express.Router();
router.post('./test-bed',
async (req, res) => {
let cards = test_load()
res.send(cards);
},
);
export default router;
前端调用
async function GetCard() {
var cards = await axios.post<string>('/test/test-bed');
return cards;
};
2条答案
按热度按时间4uqofj5v1#
您的路由无效
应该是:
在axios URL上,可能需要包含主机和端口,因为如果只定义端点,它将访问前端主机和端口,例如,如果在
localhost:3000
上打开express,则axios将为axios.post('http://localhost:3000/test/test-bed')
注:我没有用typescript写答案,但用javascript风格应该足够清晰。
k4emjkb12#
我也遇到了同样的问题。路由器必须返回JSON响应或状态码。希望有帮助。