Ver código fonte

fix(用户查询): 为.cn域名添加session验证并统一查询逻辑

为/getUser和/selectUser接口添加域名判断逻辑:
1. 对于.cn域名,需要验证session中的userId是否匹配
2. 对于.hk和.com域名,直接查询用户信息
3. 不满足条件时返回空数组
lsc 1 semana atrás
pai
commit
b72896fcc7
1 arquivos alterados com 41 adições e 22 exclusões
  1. 41 22
      pbl.js

+ 41 - 22
pbl.js

@@ -847,8 +847,27 @@ router.route("/updateliyuanUser").all((req, res, next) => {
 
 
 //查询老师的信息
 //查询老师的信息
 router.route("/getUser").all((req, res, next) => {
 router.route("/getUser").all((req, res, next) => {
-    var json = queryString(req.url);
-    getmysql(req, res, "selectUserDeail", json["uid"]);
+var json = queryString(req.url);
+    // getmysql(req, res, "selectUserDeail", json["uid"]);
+    // 获取调用接口的前端网页域名
+    // 只有.cn域名才需要判断session,.hk和.com直接查询
+    if (req.headers.origin && req.headers.origin.includes(".cn")) {
+        if (req.session && req.session.userId) {
+            if (req.session.userId == json["uid"]) {
+                getmysql(req, res, "selectUserDeail", json["uid"]);
+            } else {
+                // 不匹配则返回空数组
+                res.end(JSON.stringify([]));
+            }
+        } else {
+            res.end(JSON.stringify([]));
+        }
+    } else if(req.headers.origin){
+        // .hk和.com域名直接查询,不判断session
+        getmysql(req, res, "selectUserDeail", json["uid"]);
+    } else {
+        res.end(JSON.stringify([]));
+    }
 });
 });
 
 
 //查询老师的信息
 //查询老师的信息
@@ -4561,27 +4580,27 @@ router.route("/updateRaceUser").all((req, res, next) => {
 });
 });
 //查询用户信息
 //查询用户信息
 router.route("/selectUser").all((req, res, next) => {
 router.route("/selectUser").all((req, res, next) => {
-    var json = queryString(req.url);
-    getmysql(req, res, "selectUser", json["userid"]);
     // var json = queryString(req.url);
     // var json = queryString(req.url);
-    // // 只有.cn域名才需要判断session,.hk和.com直接查询
-    // if (req.headers.origin && req.headers.origin.includes(".cn")) {
-    //     if (req.session && req.session.userId) {
-    //         if (req.session.userId == json["userid"]) {
-    //             getmysql(req, res, "selectUser", json["userid"]);
-    //         } else {
-    //             // 不匹配则返回空数组
-    //             res.end(JSON.stringify([]));
-    //         }
-    //     } else {
-    //         res.end(JSON.stringify([]));
-    //     }
-    // } else if(req.headers.origin){
-    //     // .hk和.com域名直接查询,不判断session
-    //     getmysql(req, res, "selectUser", json["userid"]);
-    // } else {
-    //     res.end(JSON.stringify([]));
-    // }
+    // getmysql(req, res, "selectUser", json["userid"]);
+    var json = queryString(req.url);
+    // 只有.cn域名才需要判断session,.hk和.com直接查询
+    if (req.headers.origin && req.headers.origin.includes(".cn")) {
+        if (req.session && req.session.userId) {
+            if (req.session.userId == json["userid"]) {
+                getmysql(req, res, "selectUser", json["userid"]);
+            } else {
+                // 不匹配则返回空数组
+                res.end(JSON.stringify([]));
+            }
+        } else {
+            res.end(JSON.stringify([]));
+        }
+    } else if(req.headers.origin){
+        // .hk和.com域名直接查询,不判断session
+        getmysql(req, res, "selectUser", json["userid"]);
+    } else {
+        res.end(JSON.stringify([]));
+    }
 });
 });
 
 
 //查询用户信息
 //查询用户信息