【发布时间】:2017-02-10 15:56:48
【问题描述】:
您好, 我有一个从 Angular 2 调用休息 api 的小问题。 我有一个休息 api 端点:
api/room/byName/:roomName
如果我使用邮递员等 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 调用它的帮助。
谢谢
编辑
在得到建议后,这是我现在的代码,但仍然没有运气: 角度调用:
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);
}
});
});
如果我从浏览器调用端点,这可以正常工作: http://localhost:3000/api/room/byName/test
【问题讨论】:
-
你能提供你的快递工具吗
-
您是否订阅了 observable?
-
您遇到错误了吗?
-
完全没有错误。从浏览器调用此端点时工作正常:localhost:3000/api/room/byName/test
-
添加问题而不是评论@leo