package core import ( "fmt" "github.com/streadway/amqp" "hospital-open-api/config" "hospital-open-api/global" "net/url" ) func Amqp() { m := config.C.Amqp user := url.QueryEscape(m.User) password := url.QueryEscape(m.Password) dsn := fmt.Sprintf("amqp://%s:%s@%s:%d/%s", user, password, m.Host, m.Port, m.Vhost) conn, err := amqp.Dial(dsn) if err != nil { panic("rabbitMq初始化失败! " + err.Error()) } defer func(conn *amqp.Connection) { _ = conn.Close() }(conn) ch, err := conn.Channel() if err != nil { panic("rabbitMq初始化失败! " + err.Error()) } defer func(ch *amqp.Channel) { _ = ch.Close() }(ch) global.AmqpConn = conn global.AmqpChannel = ch fmt.Println("初始化rabbitMq成功......") }