表示路由器没有调用get空的obj返回请求
我正在调用从angular度4获得请求。 我已经使用expressjs路由器。 我得到的电话不来我的路由器function。 如果我使用一个虚拟身份证,它工作正常。 这是我的前端代码
getOnlineUser(){ console.log('nline --') return new Promise((resolve, reject) => { this.http.get(this.url+'/chat/getonlineusers') .map(res => res.json()) .subscribe(res => { resolve(res); }, (err) => { reject(err); }); }); }
这里是我的expressjs路由器代码
router.get('/getonlineusers', function(req, res, next) { console.log('here it is---+=============---------- ') // the above console not working OnlineUsers.find({}, function (err, Users) { console.log(Users) if (err) return next(err); res.json(Users); }); });
这个路由器工作正常,如果我使用这样的伪标识/getonlineusers/:id
服务器文件是
app.use('/chat', chat);
什么可能是错误
关于您不需要的客户端,要将您的请求包装在承诺中,更好的方法是使用toPromise()
。
import 'rxjs/add/operator/toPromise'; getOnlineUser() { return this.http.get(`{this.url}/chat/getonlineusers`) .map(res => res.json()) .toPromise(); } // back seems ok router.get('/getonlineusers', function (req, res, next) { OnlineUsers.find({}, function (err, users) { if (err) return next(err); res.json(users); }); });
我从前端打电话给/ getonlineusers ,在/ getonlineusers之前有一个名为/:room的路由,而我的ajax电话打到/:room而不是/ getonlineusers
所以我把路线/ getonlineusers从/:房间 ,这是工作
- 尝试HTTP请求时获取连接ECONNREFUSED 127.0.0.1:80
- 你如何使用NodeJS在套接字上进行HTTP GET请求?
- 错误:连接ECONNREFUSED node.js https.get请求
- node.js xmlhttp获取请求getaddrinfor ENOTFOUND错误
- 在javaScript中使用提取API进行file upload
- 当jsonparsing一个空的响应时,Whatwg Fetch失败,我该如何防止它?
- 将$ .get转换为node.js请求
- 在页面加载时骨干提取集合
- 3个请求函数的数组 – 如何仅当第一个函数的响应包含string时调用第二个函数? – 节点JS