Angular 如何将数组作为数据从角度发送到express router?
我正试图从数据库中获得一些ID的更多细节,但我还没有弄清楚如何做到这一点 以下是项目的数组:Angular 如何将数组作为数据从角度发送到express router?,angular,express,router,Angular,Express,Router,我正试图从数据库中获得一些ID的更多细节,但我还没有弄清楚如何做到这一点 以下是项目的数组: var memberIds = ["2892056", "2894544", "2894545", "2894548", "2894550", "2894553", "2894555"]; var teamId = '123434'; var categoryId
var memberIds = ["2892056", "2894544", "2894545", "2894548", "2894550", "2894553", "2894555"];
var teamId = '123434';
var categoryId = 6;
// POST from angular
getMembersDetail(teamId, categoryId, memberIds) {
let params = teamId + '/' + categoryId;
return this.http.post(baseURL + 'member-details/' + params, memberIds);
}
我以前尝试过使用数据获取请求,但没有成功。我一直收到来自express的404错误。所以,我尝试了POST请求,但这也给了我404错误
然后,直截了当地说:
router.post('member-details/:teamId/:categoryId', function(req, res){
const getMemberDetails = async() => {
try{
const categoryId = req.params.categoryId;
const teamId = req.params.teamId;
const memberIds = req.body;
const config = {
header: {
'Content-Type': 'application/x-www-form-urlencoded'
}
};
var url = baseUrl + 'member-details/' + teamId + '/' + categoryId + '/';
const response = await axios.post(url, memberIds, config);
res.send(respose.data);
} catch {
res.status(error.response.status).send(error.response.data);
};
}
getMemberDetails();
});
注意:Express router使用axios进行进一步发布。这是到
R
和Plumber
API的帖子。请忽略这一部分。我只是在使用数据和参数访问express router时遇到问题。如果baseURL
已经包含\
,那么可能您在express router中缺少了一个\
。在您的会员详细信息之前,您可能需要它
router.post('/member-details/:teamId/:categoryId', function(req, res)
请注意帖子url中的/
。检查网络并查看路线,您的基本url是什么?您确定不需要在baseURL之后添加“/”吗this.http.post(baseURL+'/memberdetails/'+params,memberid)代码>是的,基本URL很好。这是我用于其他路线的路线,除了这条路线外,其他路线都可以。为了简单起见,我已经在baseURL中添加了前面的/
。