问候,我从角度2调用休息api有一个小问题 . 我有一个休息的api endpoints :
api/room/byName/:roomName
如果我使用postful等restfull工具并调用api http://localhost:3000/api/room/byName/roomname1
这样可以正常工作并获得结果 . 但是当我可以从angular2调用它时,其余的api甚至都没有被调用 .
let params: URLSearchParams = new URLSearchParams();
params.set('roomName', roomName);
return this
.http
.get('/api/room/byName',{search:params})
.map((response: Response) => response.json());
我确定,我没有正确地称呼它 . 感谢您对如何从角度2调用它的帮助 .
谢谢
编辑
得到建议后,这是我的代码,但仍然没有运气:Angular调用:
return this.http
.get('/api/room/byName/'+roomName)
.map((res: Response) => res.json());
快速终点:
var rooms = express.Router();
rooms.get('/byName/:roomName', function(req,res){
var roomn = req.params.roomName;
console.log('Looking by roomName: ' + roomn);
Room.findOne({ "roomName": roomn }, function(err, rooms) {
if (err) {
next(err);
} else {
res.json(rooms);
}
});
});
如果我从浏览器调用 endpoints ,这可以正常工作:http://localhost:3000/api/room/byName/test
2 回答
Http get只接受url而不是body作为参数 . 它不是一个有主体的帖子 .
尝试:
首先确保你已启用CORS
第二:改变这个
至: