fix: start error
This commit is contained in:
parent
5ae5ef7cc4
commit
2e78eff033
|
@ -10,10 +10,12 @@
|
||||||
|
|
||||||
# Output of the go coverage tool, specifically when used with LiteIDE
|
# Output of the go coverage tool, specifically when used with LiteIDE
|
||||||
*.out
|
*.out
|
||||||
|
log/*
|
||||||
.vscode/*
|
.vscode/*
|
||||||
conf/app.ini
|
conf/app.ini
|
||||||
.idea/*
|
.idea/*
|
||||||
runtime/logs/*
|
runtime/logs/*
|
||||||
|
vendor/*
|
||||||
config.yaml
|
config.yaml
|
||||||
go.sum
|
go.sum
|
||||||
|
__debug_bin
|
|
@ -1,5 +1,4 @@
|
||||||
app:
|
app:
|
||||||
page_size: 10
|
|
||||||
jwt_secret: '23347$040412'
|
jwt_secret: '23347$040412'
|
||||||
run_mode: 'debug'
|
run_mode: 'debug'
|
||||||
server:
|
server:
|
||||||
|
|
13
go.mod
13
go.mod
|
@ -3,33 +3,30 @@ module github.com/viletyy/potato
|
||||||
go 1.15
|
go 1.15
|
||||||
|
|
||||||
require (
|
require (
|
||||||
cloud.google.com/go/logging v1.3.0
|
|
||||||
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751
|
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751
|
||||||
github.com/astaxie/beego v1.12.3
|
|
||||||
github.com/beego/beego/v2 v2.0.1
|
github.com/beego/beego/v2 v2.0.1
|
||||||
github.com/cpuguy83/go-md2man/v2 v2.0.0 // indirect
|
|
||||||
github.com/dgrijalva/jwt-go v3.2.0+incompatible
|
github.com/dgrijalva/jwt-go v3.2.0+incompatible
|
||||||
github.com/fsnotify/fsnotify v1.4.9
|
github.com/fsnotify/fsnotify v1.4.9
|
||||||
github.com/gin-gonic/gin v1.6.3
|
github.com/gin-gonic/gin v1.6.3
|
||||||
github.com/go-openapi/spec v0.20.3 // indirect
|
github.com/go-openapi/spec v0.20.3 // indirect
|
||||||
github.com/go-playground/validator/v10 v10.2.0
|
|
||||||
github.com/go-redis/redis v6.15.9+incompatible
|
github.com/go-redis/redis v6.15.9+incompatible
|
||||||
|
github.com/golang/protobuf v1.4.3 // indirect
|
||||||
|
github.com/google/go-cmp v0.5.4 // indirect
|
||||||
github.com/google/uuid v1.2.0
|
github.com/google/uuid v1.2.0
|
||||||
github.com/jinzhu/gorm v1.9.16
|
github.com/jinzhu/gorm v1.9.16
|
||||||
github.com/leodido/go-urn v1.2.1 // indirect
|
github.com/leodido/go-urn v1.2.1 // indirect
|
||||||
github.com/lestrrat-go/file-rotatelogs v2.4.0+incompatible
|
github.com/lestrrat-go/file-rotatelogs v2.4.0+incompatible
|
||||||
github.com/lestrrat-go/strftime v1.0.4 // indirect
|
github.com/lestrrat-go/strftime v1.0.4 // indirect
|
||||||
github.com/mailru/easyjson v0.7.7 // indirect
|
github.com/mailru/easyjson v0.7.7 // indirect
|
||||||
github.com/russross/blackfriday/v2 v2.1.0 // indirect
|
|
||||||
github.com/smartystreets/goconvey v1.6.4 // indirect
|
|
||||||
github.com/spf13/viper v1.7.1
|
github.com/spf13/viper v1.7.1
|
||||||
github.com/swaggo/gin-swagger v1.3.0
|
github.com/swaggo/gin-swagger v1.3.0
|
||||||
github.com/swaggo/swag v1.7.0
|
github.com/swaggo/swag v1.7.0
|
||||||
go.uber.org/zap v1.15.0
|
go.uber.org/zap v1.15.0
|
||||||
|
golang.org/x/mod v0.4.1 // indirect
|
||||||
golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4 // indirect
|
golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4 // indirect
|
||||||
golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4 // indirect
|
golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4 // indirect
|
||||||
golang.org/x/tools v0.1.0 // indirect
|
golang.org/x/tools v0.1.0 // indirect
|
||||||
gopkg.in/fsnotify.v1 v1.4.7
|
google.golang.org/protobuf v1.25.0 // indirect
|
||||||
gopkg.in/go-playground/validator.v9 v9.31.0
|
gopkg.in/go-playground/validator.v9 v9.31.0
|
||||||
gopkg.in/ini.v1 v1.62.0
|
gopkg.in/ini.v1 v1.62.0 // indirect
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* @Date: 2021-03-22 10:12:38
|
* @Date: 2021-03-22 10:12:38
|
||||||
* @LastEditors: viletyy
|
* @LastEditors: viletyy
|
||||||
* @LastEditTime: 2021-03-22 16:56:26
|
* @LastEditTime: 2021-03-23 09:49:41
|
||||||
* @FilePath: /potato/initialize/gorm.go
|
* @FilePath: /potato/initialize/gorm.go
|
||||||
*/
|
*/
|
||||||
package initialize
|
package initialize
|
||||||
|
@ -10,13 +10,15 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/jinzhu/gorm"
|
"github.com/jinzhu/gorm"
|
||||||
|
_ "github.com/jinzhu/gorm/dialects/mysql"
|
||||||
|
_ "github.com/jinzhu/gorm/dialects/postgres"
|
||||||
"github.com/viletyy/potato/global"
|
"github.com/viletyy/potato/global"
|
||||||
|
"github.com/viletyy/potato/models"
|
||||||
|
"github.com/viletyy/potato/models/basic"
|
||||||
)
|
)
|
||||||
|
|
||||||
var dbConfig = global.GO_CONFIG.Database
|
|
||||||
|
|
||||||
func Gorm() *gorm.DB {
|
func Gorm() *gorm.DB {
|
||||||
switch dbConfig.Type {
|
switch global.GO_CONFIG.Database.Type {
|
||||||
case "mysql":
|
case "mysql":
|
||||||
return GormMysql()
|
return GormMysql()
|
||||||
case "postgresql":
|
case "postgresql":
|
||||||
|
@ -27,7 +29,7 @@ func Gorm() *gorm.DB {
|
||||||
}
|
}
|
||||||
|
|
||||||
func GormMysql() *gorm.DB {
|
func GormMysql() *gorm.DB {
|
||||||
db, err := gorm.Open("mysql", fmt.Sprintf("%s:%s@(%s:%d)/%s?charset=utf8mb4&parseTime=True&loc=Local", dbConfig.User, dbConfig.Password, dbConfig.Host, dbConfig.Port, dbConfig.Name))
|
db, err := gorm.Open("mysql", fmt.Sprintf("%s:%s@(%s:%d)/%s?charset=utf8mb4&parseTime=True&loc=Local", global.GO_CONFIG.Database.User, global.GO_CONFIG.Database.Password, global.GO_CONFIG.Database.Host, global.GO_CONFIG.Database.Port, global.GO_CONFIG.Database.Name))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
global.GO_LOG.Error(fmt.Sprintf("Mysql Gorm Open Error: %v", err))
|
global.GO_LOG.Error(fmt.Sprintf("Mysql Gorm Open Error: %v", err))
|
||||||
}
|
}
|
||||||
|
@ -36,7 +38,7 @@ func GormMysql() *gorm.DB {
|
||||||
}
|
}
|
||||||
|
|
||||||
func GormPostgresql() *gorm.DB {
|
func GormPostgresql() *gorm.DB {
|
||||||
db, err := gorm.Open("postgres", fmt.Sprintf("host=%s user=%s dbname=%s port=%d sslmode=disable password=%s", dbConfig.Host, dbConfig.User, dbConfig.Name, dbConfig.Port, dbConfig.Password))
|
db, err := gorm.Open("postgres", fmt.Sprintf("host=%s user=%s dbname=%s port=%d sslmode=disable password=%s", global.GO_CONFIG.Database.Host, global.GO_CONFIG.Database.User, global.GO_CONFIG.Database.Name, global.GO_CONFIG.Database.Port, global.GO_CONFIG.Database.Password))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
global.GO_LOG.Error(fmt.Sprintf("Postgresql Gorm Open Error: %v", err))
|
global.GO_LOG.Error(fmt.Sprintf("Postgresql Gorm Open Error: %v", err))
|
||||||
}
|
}
|
||||||
|
@ -47,14 +49,19 @@ func GormPostgresql() *gorm.DB {
|
||||||
func GormSet(db *gorm.DB) {
|
func GormSet(db *gorm.DB) {
|
||||||
// 设置表前缀
|
// 设置表前缀
|
||||||
gorm.DefaultTableNameHandler = func(db *gorm.DB, defaultTableName string) string {
|
gorm.DefaultTableNameHandler = func(db *gorm.DB, defaultTableName string) string {
|
||||||
return dbConfig.TablePrefix + defaultTableName
|
return global.GO_CONFIG.Database.TablePrefix + defaultTableName
|
||||||
}
|
}
|
||||||
|
|
||||||
// 设置日志
|
// 设置日志
|
||||||
db.LogMode(true)
|
db.LogMode(true)
|
||||||
|
|
||||||
// 设置迁移
|
// 设置迁移
|
||||||
db.AutoMigrate()
|
db.AutoMigrate(
|
||||||
|
basic.Vendor{},
|
||||||
|
basic.Business{},
|
||||||
|
basic.MetaDatabase{},
|
||||||
|
models.User{},
|
||||||
|
)
|
||||||
|
|
||||||
// 设置空闲连接池中的最大连接数
|
// 设置空闲连接池中的最大连接数
|
||||||
db.DB().SetMaxIdleConns(10)
|
db.DB().SetMaxIdleConns(10)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* @Date: 2021-03-22 10:12:42
|
* @Date: 2021-03-22 10:12:42
|
||||||
* @LastEditors: viletyy
|
* @LastEditors: viletyy
|
||||||
* @LastEditTime: 2021-03-22 17:02:17
|
* @LastEditTime: 2021-03-23 09:26:11
|
||||||
* @FilePath: /potato/initialize/redis.go
|
* @FilePath: /potato/initialize/redis.go
|
||||||
*/
|
*/
|
||||||
package initialize
|
package initialize
|
||||||
|
@ -13,13 +13,11 @@ import (
|
||||||
"github.com/viletyy/potato/global"
|
"github.com/viletyy/potato/global"
|
||||||
)
|
)
|
||||||
|
|
||||||
var redisConfig = global.GO_CONFIG.Redis
|
|
||||||
|
|
||||||
func Redis() *redis.Client {
|
func Redis() *redis.Client {
|
||||||
rdb := redis.NewClient(&redis.Options{
|
rdb := redis.NewClient(&redis.Options{
|
||||||
Addr: fmt.Sprintf("%s:%d", redisConfig.Host, redisConfig.Port),
|
Addr: fmt.Sprintf("%s:%d", global.GO_CONFIG.Redis.Host, global.GO_CONFIG.Redis.Port),
|
||||||
Password: redisConfig.Password,
|
Password: global.GO_CONFIG.Redis.Password,
|
||||||
DB: int(redisConfig.Db),
|
DB: int(global.GO_CONFIG.Redis.Db),
|
||||||
})
|
})
|
||||||
|
|
||||||
RedisSet(rdb)
|
RedisSet(rdb)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* @Date: 2021-03-22 17:03:27
|
* @Date: 2021-03-22 17:03:27
|
||||||
* @LastEditors: viletyy
|
* @LastEditors: viletyy
|
||||||
* @LastEditTime: 2021-03-22 23:55:32
|
* @LastEditTime: 2021-03-23 10:23:12
|
||||||
* @FilePath: /potato/initialize/server.go
|
* @FilePath: /potato/initialize/server.go
|
||||||
*/
|
*/
|
||||||
package initialize
|
package initialize
|
||||||
|
@ -20,18 +20,15 @@ import (
|
||||||
"github.com/viletyy/potato/utils"
|
"github.com/viletyy/potato/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
var serverConfig = global.GO_CONFIG.Server
|
|
||||||
|
|
||||||
func RunServer() {
|
func RunServer() {
|
||||||
binding.Validator = new(utils.DefaultValidator)
|
binding.Validator = new(utils.DefaultValidator)
|
||||||
|
|
||||||
router := routers.InitRouter()
|
router := routers.InitRouter()
|
||||||
|
|
||||||
server := &http.Server{
|
server := &http.Server{
|
||||||
Addr: fmt.Sprintf(":%d", serverConfig.HttpPort),
|
Addr: fmt.Sprintf(":%d", global.GO_CONFIG.Server.HttpPort),
|
||||||
Handler: router,
|
Handler: router,
|
||||||
ReadTimeout: time.Duration(serverConfig.ReadTimeout),
|
ReadTimeout: time.Duration(global.GO_CONFIG.Server.ReadTimeout) * time.Second,
|
||||||
WriteTimeout: time.Duration(serverConfig.WriteTimeout),
|
WriteTimeout: time.Duration(global.GO_CONFIG.Server.ReadTimeout) * time.Second,
|
||||||
MaxHeaderBytes: 1 << 20,
|
MaxHeaderBytes: 1 << 20,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
/*
|
/*
|
||||||
* @Date: 2021-03-22 10:45:37
|
* @Date: 2021-03-22 10:45:37
|
||||||
* @LastEditors: viletyy
|
* @LastEditors: viletyy
|
||||||
* @LastEditTime: 2021-03-22 10:49:19
|
* @LastEditTime: 2021-03-23 09:29:06
|
||||||
* @FilePath: /potato/utils/directory.go
|
* @FilePath: /potato/utils/directory.go
|
||||||
*/
|
*/
|
||||||
package utils
|
package utils
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/viletyy/potato/global"
|
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -31,10 +31,10 @@ func CreateDir(dirs ...string) (err error) {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if !exist {
|
if !exist {
|
||||||
global.GO_LOG.Debug("create directory" + v)
|
fmt.Println("create directory" + v)
|
||||||
err = os.MkdirAll(v, os.ModePerm)
|
err = os.MkdirAll(v, os.ModePerm)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
global.GO_LOG.Error("create directory"+v, zap.Any(" error:", err))
|
fmt.Println("create directory"+v, zap.Any(" error:", err))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* @Date: 2021-03-22 17:16:46
|
* @Date: 2021-03-22 17:16:46
|
||||||
* @LastEditors: viletyy
|
* @LastEditors: viletyy
|
||||||
* @LastEditTime: 2021-03-23 00:54:22
|
* @LastEditTime: 2021-03-23 09:24:08
|
||||||
* @FilePath: /potato/utils/jwt.go
|
* @FilePath: /potato/utils/jwt.go
|
||||||
*/
|
*/
|
||||||
package utils
|
package utils
|
||||||
|
@ -15,8 +15,6 @@ import (
|
||||||
"github.com/viletyy/potato/global"
|
"github.com/viletyy/potato/global"
|
||||||
)
|
)
|
||||||
|
|
||||||
var jwtSecret = []byte(global.GO_CONFIG.App.JwtSecret)
|
|
||||||
|
|
||||||
type CustomClaims struct {
|
type CustomClaims struct {
|
||||||
UserId int64
|
UserId int64
|
||||||
jwt.StandardClaims
|
jwt.StandardClaims
|
||||||
|
@ -37,7 +35,7 @@ func GenerateToken(userId int64) (string, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
tokenClaims := jwt.NewWithClaims(jwt.SigningMethodHS256, claims)
|
tokenClaims := jwt.NewWithClaims(jwt.SigningMethodHS256, claims)
|
||||||
tokenString, err := tokenClaims.SignedString(jwtSecret)
|
tokenString, err := tokenClaims.SignedString([]byte(global.GO_CONFIG.App.JwtSecret))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
global.GO_LOG.Error(fmt.Sprintf("General Token Error: %v", err))
|
global.GO_LOG.Error(fmt.Sprintf("General Token Error: %v", err))
|
||||||
}
|
}
|
||||||
|
@ -56,7 +54,7 @@ func ParseToken(tokenString string) (*CustomClaims, error) {
|
||||||
if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok {
|
if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok {
|
||||||
return nil, fmt.Errorf("Unexpected signing method: %v", token.Header["alg"])
|
return nil, fmt.Errorf("Unexpected signing method: %v", token.Header["alg"])
|
||||||
}
|
}
|
||||||
return jwtSecret, nil
|
return []byte(global.GO_CONFIG.App.JwtSecret), nil
|
||||||
})
|
})
|
||||||
|
|
||||||
if tokenClaims != nil {
|
if tokenClaims != nil {
|
||||||
|
|
Loading…
Reference in New Issue