{ "properties" : { }, "id" : "6fcf21ad09874c2ca00dd9283f2a16cb", "script" : null, "groupId" : "0f7392c3132d4ae698caf0e8ab55756b", "name" : "登录", "createTime" : 1754119582735, "updateTime" : 1754193379477, "lock" : null, "createBy" : "admin", "updateBy" : "admin", "path" : "login", "method" : "POST", "parameters" : [ ], "options" : [ ], "requestBody" : "{\n \"username\": \"admin\",\n \"password\": \"1234567\"\n}", "headers" : [ ], "paths" : [ ], "responseBody" : "{\n \"code\": \"000000\",\n \"message\": \"成功\",\n \"data\": {\n \"access_token\": \"7a01c52f44d54dd6a6517ba36cba122f\",\n \"refresh_token\": \"d8c639f0288a4cdfa96ac56378bdcc23\"\n }\n}", "description" : null, "requestBodyDefinition" : { "name" : "", "value" : "", "description" : "", "required" : false, "dataType" : "Object", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ { "name" : "username", "value" : "admin", "description" : "", "required" : false, "dataType" : "String", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ ] }, { "name" : "password", "value" : "123456", "description" : "", "required" : false, "dataType" : "String", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ ] } ] }, "responseBodyDefinition" : { "name" : "", "value" : "", "description" : "", "required" : false, "dataType" : "Object", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ { "name" : "code", "value" : "000000", "description" : "", "required" : false, "dataType" : "String", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ ] }, { "name" : "message", "value" : "成功", "description" : "", "required" : false, "dataType" : "String", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ ] }, { "name" : "data", "value" : "", "description" : "", "required" : false, "dataType" : "Object", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ { "name" : "access_token", "value" : "1234e6e666184d479eb08e29d23bfa8e", "description" : "", "required" : false, "dataType" : "String", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ ] }, { "name" : "refresh_token", "value" : "ddedf3a00fcf4a3ba7e88712ec446b45", "description" : "", "required" : false, "dataType" : "String", "type" : null, "defaultValue" : null, "validateType" : "", "error" : "", "expression" : "", "children" : [ ] } ] } ] } } ================================ // 参数校验 if (is_null(body) || is_blank(body.username) || is_blank(body.password)){ return biz_failure(BizConstants.AUTH_0301) } // 登录 var userDO = db.select(""" SELECT * FROM sys_org_user WHERE username = #{body.username} """) if (userDO == null || !bcrypt_match(body.password, userDO.password)){ return biz_failure(BizConstants.AUTH_0302) } if (userDO.status == "LOCKED") { return biz_failure(BizConstants.AUTH_0303) } if (userDO.status == "BANNED") { return biz_failure(BizConstants.AUTH_0304) } var access_token = uuid() redis_setex("dolphin:access_token:" + access_token, { id: userDO.id, username: userDO.username }, 1000 * 60 * 30) var refresh_token = uuid() redis_setex("dolphin:refresh_token:" + refresh_token, { access_token: access_token }, 1000 * 60 * 60 * 24 * 7) return success({ access_token: access_token, refresh_token: refresh_token })