Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在nodejs中创建restapi_Javascript_Sql_Node.js_Postgresql - Fatal编程技术网

Javascript 在nodejs中创建restapi

Javascript 在nodejs中创建restapi,javascript,sql,node.js,postgresql,Javascript,Sql,Node.js,Postgresql,我有一个postgresql表,它看起来像: man_id subgroup power group 1 sub_A 1 Group_A 2 Sub_B -1 Group_A 3 Sub_A -1 Group_B 4 Sub_B 1 Group_B 5 Sub_A -1 Group_A 6 Sub_B 1 Group_A 7 Sub_A -1 Group_B 8 Sub_B 1 Group_B 我们这里有一个功率计算,它的工作原理是 Total Power of Subgroup Sub_A

我有一个postgresql表,它看起来像:

man_id subgroup power group
1 sub_A 1 Group_A
2 Sub_B -1 Group_A
3 Sub_A -1 Group_B
4 Sub_B 1 Group_B
5 Sub_A -1 Group_A
6 Sub_B 1 Group_A
7 Sub_A -1 Group_B
8 Sub_B 1 Group_B
我们这里有一个功率计算,它的工作原理是

Total Power of Subgroup Sub_A in the Group Group_A is (1 + (-1) ) = 0
Total Power of Subgroup Sub_B in the Group Group_A is ((-1) + 1 ) = 0
Total Power of Subgroup Sub_A in the Group Group_B is ((-1) + (-1) ) = -2
Total Power of Subgroup Sub_B in the Group Group_B is (1 + 1 ) = 2

So the power of `Sub_A` in the Group_A is not equal to power of Sub_A in the Group_B
So the power of Sub_B in the Group_A is not equal to power of Sub_B in the Group_B
我想在nodejs中创建一个restapi,在这里我可以使用子组名称进行查询。如果对于相同的子组名称,所有其他组名称的幂相等,则它将返回yes,否则返回No

例如,

http://localhost:3000/api/check/Sub_A
将返回NO

http://localhost:3000/api/check/Sub_B
将返回NO

我可以连接数据库并列出JSON中的所有条目。下面是我的代码

http://localhost:3000/api/lists
将返回数据库中的所有条目

query.js

var promise = require('bluebird');

var options = {
  // Initialization Options
  promiseLib: promise
};

var pgp = require('pg-promise')(options);
var connectionString = 'postgres://localhost:5432/lists';
var db = pgp(connectionString);

// add query functions

module.exports = {
  getAllList: getAllList
};


function getAllList(req, res, next) {
  db.any('select * from dataset')
    .then(function (data) {
      res.status(200)
        .json({
          status: 'success',
          data: data,
          message: 'Retrieved ALL Data'
        });
    })
    .catch(function (err) {
      return next(err);
    });
}
index.js

var express = require('express');
var router = express.Router();

var db = require('../queries');


router.get('/api/lists', db.getAllList);



module.exports = router;

您可以尝试使用Express request对象中的
req.params
对象

http://localhost:3000/api/check/{Subgroup}
下面的代码可能会对您有所帮助

app.get('/api/check/:subgroup?',(req,res)=>{
const subgroup=req.params.subgroup;
res.json(…);

});实际上,我正在寻找这个,如果对于相同的子组名称,所有其他组名称的幂相等,那么它将返回yes,否则返回No。