| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- package utils
- import (
- "fmt"
- "strings"
- beego "github.com/beego/beego/v2/server/web"
- )
- // GetConfigString 获取字符串类型配置,如果不存在返回默认值
- func GetConfigString(key string, defaultValue string) string {
- value, err := beego.AppConfig.String(key)
- if err != nil || value == "" {
- return defaultValue
- }
- return value
- }
- // MustGetConfigString 获取字符串类型配置,如果不存在则panic
- func MustGetConfigString(key string) string {
- value, err := beego.AppConfig.String(key)
- if err != nil || value == "" {
- panic(fmt.Sprintf("配置项 %s 未设置或为空,请检查 conf/app.conf 文件", key))
- }
- return value
- }
- // GetConfigInt 获取整数类型配置,如果不存在返回默认值
- func GetConfigInt(key string, defaultValue int) int {
- value, err := beego.AppConfig.Int(key)
- if err != nil {
- return defaultValue
- }
- return value
- }
- // GetProxyURL 生成OSS代理URL(加密版本)
- // 返回相对路径,让前端自动使用当前域名
- func GetProxyURL(originalURL string) string {
- if originalURL == "" {
- return ""
- }
- encryptedURL, err := EncryptURL(originalURL)
- if err != nil {
- return ""
- }
- return "/apiv1/oss/parse/?url=" + encryptedURL
- }
- // GetMySQLConfig 获取MySQL配置
- func GetMySQLConfig() map[string]string {
- return map[string]string{
- "user": MustGetConfigString("mysqluser"),
- "pass": MustGetConfigString("mysqlpass"),
- "urls": MustGetConfigString("mysqlurls"),
- "port": MustGetConfigString("mysqlhttpport"),
- "db": MustGetConfigString("mysqldb"),
- }
- }
- // GetOSSConfig 获取OSS配置
- func GetOSSConfig() map[string]string {
- return map[string]string{
- "endpoint": MustGetConfigString("oss_endpoint"),
- "access_key": MustGetConfigString("oss_access_key_id"),
- "secret_key": MustGetConfigString("oss_access_key_secret"),
- "bucket": MustGetConfigString("oss_bucket"),
- "encrypt_key": GetConfigString("oss_parse_encrypt_key", ""),
- }
- }
- // GetYOLOBaseURL 获取YOLO服务地址
- func GetYOLOBaseURL() string {
- return strings.TrimRight(MustGetConfigString("yolo_base_url"), "/")
- }
- // GetAuthAPIURL 获取认证服务地址
- func GetAuthAPIURL() string {
- return strings.TrimRight(MustGetConfigString("auth_api_url"), "/")
- }
- // GetKnowledgeSearchURL 获取知识库搜索地址
- func GetKnowledgeSearchURL() string {
- return MustGetConfigString("knowledge_search_url")
- }
- // GetDifyWorkflowURL 获取Dify工作流地址
- func GetDifyWorkflowURL() string {
- return MustGetConfigString("dify_workflow_url")
- }
|