Я использую библиотеку redis redigo
и проверяю, присутствует ли ключ в redis set
. Я использую команду redis SISMEMBER
с помощью метода redigo Do
, который возвращает интерфейс. Это ответ команды, выполняемой с использованием Do
. В случае команды SISMEMBER
ответ в 1
или 0
. и в этом конкретном случае ответ 0
, поскольку данный ключ отсутствует в этом наборе. однако reflect.DeepEqual(resp, 0)
возвращает false
, когда ожидается true
. Это не правильный способ использования функции DeepEqual
?golang deepEqual interface {} to integer
import (
"fmt"
"reflect"
"github.com/garyburd/redigo/redis"
)
func main() {
conn, err := redis.Dial("tcp", "127.0.0.1:6379")
if err != nil {
fmt.Println(err.Error())
return
}
defer conn.Close()
resp, err := conn.Do("SISMEMBER", "mySet", "Hello")
if reflect.DeepEqual(resp, 0) {
fmt.Println("record doesn't exist")
}
}
спасибо, это решение выглядит многообещающим. – srini