我有一个搜索页面,我需要发送一个数组来告诉我用户正在寻找什么,例如:
{型号:'牛仔裤',颜色:'蓝色}
我应该有一个 GET 请求来从数据库接收数据。
我可以同时进行 Get 和 Post 请求吗? 您建议两者都使用一种功能还是每种都使用一种功能?如果是后者那么我如何在 Express.js 中的函数之间传递数据?
app.route('/alls/:issuename')
.get(alls.list)
.post(alls.list2);
Controller
exports.list = function(req, res) {
mongoose.model(var1).find({ color: var2 }).exec(function(err, alls){
res.jsonp(alls);
});
};
exports.list2 = function(req, res) {
var var1 = req.body.Model;
var var2 = req.body.Color;
};
这是我将参数传递给 $Resource 中的 GET
angular.module('alls').factory('Alls', ['$resource', function($resource) {
return $resource('alls/:issuename', {issuename: '@issuename'},
{
get:{ method: 'GET', isArray:true }
});
}]);
如何传递数组?
最佳答案
我是这样解决的
$资源
angular.module('alls').factory('Alls', ['$resource', function($resource) {
return $resource('alls/:issuename', {issuename: '@issuename'},
{
get:{ method: 'GET',
query: {
Model: '',
Color: ''
}, isArray:true }
});
}]);
然后我在 Controller 中收到这些数据
exports.list = function(req, res) {
var var1 = req.query.Model;
var var2 = req.query.Color;
mongoose.model(var1).find({ color: var2 }).exec(function(err, alls) {
res.jsonp(alls);
});
};
注意:$resource中的数组名称可以是query或其他任何名称,但您只能在 Controller 中通过req.query接收传递的数据。
在路线部分我只需要 get 和 post 是多余的
希望对其他人有帮助!
关于javascript - NODE 中同时 GET 和 POST 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30494659/