From 5e6f9aa94e946adf38e60c709bc34ca506a0dda9 Mon Sep 17 00:00:00 2001 From: wanglei <34475144@qqcom> Date: Thu, 6 Nov 2025 13:27:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=85=8D=E7=BD=AE=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=BD=A2=E5=BC=8F=EF=BC=8C=E7=9B=B4=E6=8E=A5=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E9=85=8D=E7=BD=AE=E7=9A=84=E5=80=BC=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/auth/jwt-auth.lua | 3 +-- src/config.lua | 2 +- src/init.lua | 9 ++++----- src/share/helpers.lua | 3 +-- src/share/model.lua | 38 ++++++++++++++++++-------------------- src/share/redis.lua | 3 +-- src/util/token.lua | 5 ++--- 7 files changed, 28 insertions(+), 35 deletions(-) diff --git a/src/auth/jwt-auth.lua b/src/auth/jwt-auth.lua index f508cd3..a91a2aa 100644 --- a/src/auth/jwt-auth.lua +++ b/src/auth/jwt-auth.lua @@ -1,6 +1,5 @@ local jwt = require "resty.jwt" local cjson = require("cjson.safe") -local conf = require("config") local jsonschema = require("jsonschema") -- 定义一个JSON Schema @@ -34,7 +33,7 @@ end --获取token的数据值 local token = string.sub(auth_header,8) --校验令牌 -local jwt_obj = jwt:verify(conf.secret_key, token) +local jwt_obj = jwt:verify(SYSTEM_CONFIG.secret_key, token) --如果校验结果中的verified==false,则表示令牌无效 if jwt_obj.verified == false then ngx.log(ngx.WARN, "Invalid token: ".. jwt_obj.reason) diff --git a/src/config.lua b/src/config.lua index d458395..396f101 100644 --- a/src/config.lua +++ b/src/config.lua @@ -4,7 +4,7 @@ --- DateTime: 2025/9/24 16:31 --- -return { +SYSTEM_CONFIG = { APP_ENV = "dev", -- dev/prod locale = 'zh', diff --git a/src/init.lua b/src/init.lua index 3214983..db7b20a 100644 --- a/src/init.lua +++ b/src/init.lua @@ -23,7 +23,6 @@ end --初始化,获取系统默认的用户权限,为实现RBAC框架做权限数据准备 local function handler() - local conf = require("config") --引用使用的库文件 local Model = require("share.model") --创建一个数据表相关的模型 @@ -41,14 +40,14 @@ local function handler() red:set_timeout(conf.REDIS.TIMEOUT) -- 1秒 -- 连接到 Redis - local ok, err = red:connect(conf.REDIS.HOST, conf.REDIS.PORT) + local ok, err = red:connect(SYSTEM_CONFIG.REDIS.HOST, SYSTEM_CONFIG.REDIS.PORT) if not ok then ngx.log(ngx.ERR, "redis failed to connect: "..err) return end --需要密码时对密码进行处理 - if conf.REDIS.PASSWORD ~= nil then - local res, err = red:auth(conf.REDIS.PASSWORD) + if SYSTEM_CONFIG.REDIS.PASSWORD ~= nil then + local res, err = red:auth(SYSTEM_CONFIG.REDIS.PASSWORD) if not res then ngx.log(ngx.ERR, "redis failed to connect, password error: "..err) return @@ -56,7 +55,7 @@ local function handler() end -- 从连接池中获取连接 - red:set_keepalive(conf.REDIS.POOL_MAX_IDLE_TIME, conf.REDIS.POOL_SIZE) + red:set_keepalive(SYSTEM_CONFIG.REDIS.POOL_MAX_IDLE_TIME, SYSTEM_CONFIG.REDIS.POOL_SIZE) -- 设置 key-value local ok, err = red:set("admin-system:user:add", "1") diff --git a/src/share/helpers.lua b/src/share/helpers.lua index a03ab0a..abacb5a 100644 --- a/src/share/helpers.lua +++ b/src/share/helpers.lua @@ -127,8 +127,7 @@ local function get_cookie(key) end local function get_local_time() - local config = require("config") - local time_zone = ngx.re.match(config.time_zone, "[0-9]+") + local time_zone = ngx.re.match(SYSTEM_CONFIG.time_zone, "[0-9]+") if time_zone == nil then local err = "not set time zone or format error, time zone should look like `+8:00` current is: " .. config.time_zone ngx.log(ngx.ERR, err) diff --git a/src/share/model.lua b/src/share/model.lua index 0992a7d..03f1955 100644 --- a/src/share/model.lua +++ b/src/share/model.lua @@ -1,6 +1,4 @@ local Database = require('share.database') -local conf = require("config") - local helpers = require('share.helpers') local implode = helpers.implode local unique = helpers.unique @@ -12,28 +10,28 @@ local WRITE = 'WRITE' local READ = 'READ' local database_write = Database:new({ - host = conf.POSTGRES.HOST, - port = conf.POSTGRES.PORT, - user = conf.POSTGRES.USERNAME, - password = conf.POSTGRES.PASSWORD, - database = conf.POSTGRES.DATABASE, - charset = conf.POSTGRES.CHARSET, - timeout = conf.POSTGRES.TIMEOUT, - db_pool_timeout = conf.POSTGRES.POOL_TIMEOUT, - db_pool_size = conf.POSTGRES.POOL_SIZE, + host = SYSTEM_CONFIG.POSTGRES.HOST, + port = SYSTEM_CONFIG.POSTGRES.PORT, + user = SYSTEM_CONFIG.POSTGRES.USERNAME, + password = SYSTEM_CONFIG.POSTGRES.PASSWORD, + database = SYSTEM_CONFIG.POSTGRES.DATABASE, + charset = SYSTEM_CONFIG.POSTGRES.CHARSET, + timeout = SYSTEM_CONFIG.POSTGRES.TIMEOUT, + db_pool_timeout = SYSTEM_CONFIG.POSTGRES.POOL_TIMEOUT, + db_pool_size = SYSTEM_CONFIG.POSTGRES.POOL_SIZE, db_type = WRITE }) local database_read = Database:new({ - host = conf.POSTGRES.HOST, - port = conf.POSTGRES.PORT, - user = conf.POSTGRES.USERNAME, - password = conf.POSTGRES.PASSWORD, - database = conf.POSTGRES.DATABASE, - charset = conf.POSTGRES.CHARSET, - timeout = conf.POSTGRES.TIMEOUT, - db_pool_timeout = conf.POSTGRES.POOL_TIMEOUT, - db_pool_size = conf.POSTGRES.POOL_SIZE, + host = SYSTEM_CONFIG.POSTGRES.HOST, + port = SYSTEM_CONFIG.POSTGRES.PORT, + user = SYSTEM_CONFIG.POSTGRES.USERNAME, + password = SYSTEM_CONFIG.POSTGRES.PASSWORD, + database = SYSTEM_CONFIG.POSTGRES.DATABASE, + charset = SYSTEM_CONFIG.POSTGRES.CHARSET, + timeout = SYSTEM_CONFIG.POSTGRES.TIMEOUT, + db_pool_timeout = SYSTEM_CONFIG.POSTGRES.POOL_TIMEOUT, + db_pool_size = SYSTEM_CONFIG.POSTGRES.POOL_SIZE, db_type = READ }) diff --git a/src/share/redis.lua b/src/share/redis.lua index 48b20b9..9fd297c 100644 --- a/src/share/redis.lua +++ b/src/share/redis.lua @@ -1,9 +1,8 @@ local redis = require("resty.redis") -local conf = require('config') local _M = setmetatable({}, {__index = function(self, key) local red = redis:new() - local ok, err = red:connect(conf.REDIS.HOST, conf.REDIS.PORT) + local ok, err = red:connect(SYSTEM_CONFIG.REDIS.HOST, SYSTEM_CONFIG.REDIS.PORT) if not ok then ngx.log(ngx.ERR, err) end diff --git a/src/util/token.lua b/src/util/token.lua index 1f08019..ac69369 100644 --- a/src/util/token.lua +++ b/src/util/token.lua @@ -5,7 +5,6 @@ --- local jwt = require("resty.jwt") -local conf = require("config") local jsonschema = require("jsonschema") local _M = {} @@ -39,7 +38,7 @@ function _M.generateToken(userid, username) obj.payload.userid = userid obj.payload.username = username --获取的登陆的用户信息,返回tocken - local jwt_token = jwt:sign(conf.secret_key, obj) + local jwt_token = jwt:sign(SYSTEM_CONFIG.secret_key, obj) return "Bearer "..jwt_token end @@ -68,7 +67,7 @@ function _M.authorizationToken(auth_header) --查找令牌中的Bearer前缀字符,并进行截取 local token = string.sub(auth_header,8) --校验令牌 - local jwt_obj = jwt:verify(conf.secret_key, token) + local jwt_obj = jwt:verify(SYSTEM_CONFIG.secret_key, token) --如果校验结果中的verified==false,则表示令牌无效 if jwt_obj.verified == false then response["code"] = 401