由于gin项目中需要使用的bcrypt这个包,但是国内由于网络问题导致无法安装此包,所以需要使用clone方式下载此包,操作流程如下
# 创建目录
mkdir -p $GOPATH/src/golang.org/x/
# 进入目录
cd $GOPATH/src/golang.org/x/
# 下载项目
git clone https://github.com/golang/crypto.git
现在就能正常的使用此包了,其他的包无法下载也是同理
//比对用户密码是否相等
func ValidatePassWd(src string, passWd string) (bool, error) {
if err := bcrypt.CompareHashAndPassword([]byte(passWd), []byte(src)); err != nil {
return false, errors.New("密码错误")
}
return true, nil
}
//生成密码
func GeneratePassWd(src string) ([]byte, error) {
return bcrypt.GenerateFromPassword([]byte(src), bcrypt.DefaultCost)
}