Quantcast
Channel: CNode:Node.js专业中文社区
Viewing all articles
Browse latest Browse all 14821

mongoose 不能用ajax获取的数据当做查询条件吗

$
0
0
    Ques.find({'author': 'admin'})
	  .select('star')
	  .exec((err, stars) => {
		if (err) next(err)
		console.log(stars)
	  });

这样直接写能够获取到author为admin的数据。(ajax的状态是cancel, 但是数据库是操作到了, 把timeout设置长一点, 还是cancel)

但是换做ajax的数据时, 始终不行

	router.post('/star', (req, res) => {
		let authors = req.body.author;
		console.log("服务器收到一个Ajax请求,信息为:", authors);
		console.log(typeof(authors))  // string
		let auth = authors 
		console.log(auth)  // admin
		Ques.find({'author': auth})
		  .select('star')
		  .exec((err, stars) => {
			if (err) next(err)
			console.log(stars)
		  });
		});

不显示数据, 说明是没有找到这个用户(ajax的状态是 failed)

我又这样试了试

	let auth = 'admin'
    Ques.find({'author': auth})
    .select('star')
    .exec((err, stars) => {
      if (err) next(err)
      console.log(stars)
    });

这样也是可以的

ajax请求

	var author = 'XXXX'  // 动态获取的
	$.ajax({
		data: {author: author}, 
		url: ' /star',
		dataType: 'json',
		timeout: 2000,
		type: 'POST',
		success: function(data){
			console.log(data);
		}
	});
	

Viewing all articles
Browse latest Browse all 14821

Trending Articles