编译Go版本proto3出现go_package错误

Go 

在使用protobuf2升到protobuf3时,更新了proto-gen-go,编译proto文件进报了错误 protoc-gen-go: unable to determine Go import path for "proto/ipc.proto" Please specify either

Go中使用SSH认证连接MongoDB

Go 

一、说明 go连接MongoDB驱动库mongo-driver和mgo.v2库中都不支持ssh认证连接的。但是我们可以使用net库先与MongoDB数据库服务器建立ssh连接,然后再将MongoDB数据库所在服务器端口映射到本地连接中转发就可以了。 二、使用 下面以mongo-driver数据库驱动

Go中使用国家新闻出版署实名认证

Go 

随着网络游戏防沉迷系统的接入,实名认证验证也是一个必不可少的部分,网上有第三方的实名认证但基本上都收费,国家新闻出版署提供了免费的接口,不过需要自己去提交申请,获取应用标识 (APPID)、应用密钥 (Secret Key)、业务权限标识(BizId),并将请求服务器的IP设为白名单后,就可以调用h

Go中strings包

Go 

字符串比较 func Compare(a, b string) int 按两个字符串顺序比较两个字符ASCII码值大小比较。如果 a==b,则结果为 0,如果 a < b,则结果为 -1,如果 a > b,则结果为 +1。 // 输出 -1 fmt.Println(strings.Compare("

Go处理中文字符串

Go 

先来看一个简单的例子 func main() { str := "你好guoke" fmt.Println("字符串长度为:", len(str)) for i:=0; i<len(str); i++{ fmt.Println("第",i+1,"个字符为:",str[i:i+1]) }

Go使用base64编码

Go 

Go中的系统库中提供了encoding/base64编码/解码的内置支持. encoding/base64提供了四种模式的编码/解码 StdEncoding:常规编码 URLEncoding:URL safe 编码 RawStdEncoding:常规编码,末尾不补 = RawURLEncoding:

Go使用des加密

Go 

一、DES算法简介 DES(Data Encryption Standard)是一种常见的分组加密算法,由IBM公司在1971年提出。它是一种对称加密算法,也就是说它使用同一个密钥来加密和解密数据。 二、密钥 DES使用一个56位的初始密钥,但是这里提供的是一个64位的值,这是因为在硬件实现中每8位

Go身份证号验证算法

Go 

一、起因 因国家规定游戏都要加入防止未成年人沉迷,所以实名认证的身份证验证成了基操,而公安授权的第三方实名验证(如:腾讯云、数据宝等)验证都是收费的,而且都是请求就收费,不然验证成功还是失败,所以,为了节省开销,可以先在本地服务器验证。 因为18位身份证的最后一位是校验位,前6位是地区,中间8位是出

Go使用md5

Go 

在go中的系统加密包crypto/md5包中,提供了New()和Sum()函数来获取md5值。 导入 import "crypto/md5" 使用 32位md5加密后字符串 // 返回一个32位md5加密后的字符串 func Md5(str string) string { h := md5.N

Go中Nats基本使用

Go 

NATS是一个开源的,云原生的消息系统。前面讲过CentOS 7 安装nats server。当NATS作为发布-订阅引擎时,它提供了三种消息传递模式: 发布-订阅 队列 请求-响应 下面简单介绍一下Go中实现这三种消息传递。 一、安装 go get github.com/nats-io/nats.