我正在Windows上编写一个带有redis的简单go Web应用程序(首次尝试redis)。我正在使用go-redis包连接到Redis。
package main import ( "fmt" "net/http" "text/template" "github.com/go-redis/redis" "github.com/gorilla/mux" ) var client *redis.Client var tmpl *template.Template func init() { client = redis.NewClient(&redis.Options{ Addr: "localhost:6397", Password: "", DB: 0, }) tmpl = template.Must(template.ParseGlob("./templates/*.gohtml")) pong, err := client.Ping().Result() fmt.Println(pong, err) } func main() { router := mux.NewRouter() router.HandleFunc("/", indexHandler).Methods("GET") http.Handle("/", router) http.ListenAndServe(":1234", nil) } func indexHandler(w http.ResponseWriter, r *http.Request) { comments, err := client.LRange("comments", 0, 10).Result() check(err) tmpl.ExecuteTemplate(w, "index.gohtml", comments) } func check(err error) { if err != nil { fmt.Println(err) return } }
但是,当我运行此代码时,我收到“拨号tcp [:: 1]:6397:connectex:由于目标计算机主动拒绝它,因此无法建立连接。”
我能找到的唯一答案是“启动redis服务器”。我的Redis服务器已启动并正在运行(通过在Redis客户端中使用“ PING”命令对其进行了检查)。我也尝试过以管理员身份运行它,但是没有运气。附屏幕截图
任何帮助,将不胜感激。提前致谢!
这很可能是由于Redis服务器在端口6379(这是Redis服务器的默认端口)上运行而引起的,但是您正在尝试连接到该端口6397。
6379
6397
将服务器地址更改为:
Addr: "localhost:6379"
从 Addr: "localhost:6397"
Addr: "localhost:6397"
那应该可以解决您的问题。