Browse Source

✨ feat(GetPermissions): 增加用户权限获取接口

Pchen. 8 months ago
parent
commit
20f56a8ed6
2 changed files with 49 additions and 1 deletions
  1. 48 0
      apis/User/GetPermissions.js
  2. 1 1
      apis/User/WXWorkUrl.js

+ 48 - 0
apis/User/GetPermissions.js

@@ -0,0 +1,48 @@
+const API = require("../../lib/API");
+const { BaseStdResponse } = require("../../BaseStdResponse");
+const AccessControl = require("../../lib/AccessControl");
+
+// 获取用户权限
+class GetPermissions extends API {
+    constructor() {
+        super();
+
+        this.setMethod("GET");
+        this.setPath("/User/GetPermissions");
+    }
+
+    async onRequest(data, res) {
+        this.setAllowCORS(res);
+        let {
+            uuid,
+            session
+        } = data;
+
+        // 检查必需的参数是否缺失
+        if ([uuid, session].some(value => value === '' || value === null || value === undefined)) {
+            res.json({
+                ...BaseStdResponse.MISSING_PARAMETER,
+                endpoint: 1513123
+            });
+            return;
+        }
+
+        // 检查 session 是否有效
+        if (!await AccessControl.checkSession(uuid, session)) {
+            res.json({
+                ...BaseStdResponse.ACCESS_DENIED,
+                endpoint: 48153145
+            });
+            return;
+        }
+
+        let permission = await AccessControl.getPermission(uuid);
+
+        res.json({
+            ...BaseStdResponse.OK,
+            permission
+        });
+    }
+}
+
+module.exports.GetPermissions = GetPermissions;

+ 1 - 1
apis/User/WXWorkUrl.js

@@ -12,7 +12,7 @@ class WXWorkUrl extends API {
     }
 
     async onRequest(data, res) {
-        // this.setAllowCORS(res);
+        this.setAllowCORS(res);
 
         const { num, type } = data;