
Golang
文章平均质量分 50
Golang相关
lauwen96
PHP && FE && Golang = true
展开
-
Golang map数组按字段分类
原始数据Go类二维数组按字段分类/map数组按字段分类原始数据数据相应结构体。原创 2022-08-01 10:17:21 · 860 阅读 · 0 评论 -
Gin-Vue-Admin 前后端获取用户信息方式
前端前端登陆成功后,gin-vue-admin会将登录用户存储到vuex中,所以获取时直接在vuex中获取就好,具体代码如下:计算属性中获取下面同时获取了登陆后的token和用户信息computed: { ...mapGetters('user', ['userInfo', 'token'])},使用console.log('user-info', this.userInfo)console.log('token', this.token)后端有以原创 2022-02-28 18:24:18 · 1553 阅读 · 0 评论 -
Gin渲染html模板报错:ends in a non-text context: {stateHTMLCmt delimNone urlPartNone jsCtxRegexp attrNone
起因在部署前端发来的模板文件后,出现了以下错误,由于与网上找的原因有所不同,所以分享一下ends in a non-text context: {stateHTMLCmt delimNone urlPartNone jsCtxRegexp attrNone elementNone <nil>}排查过程常见原因在检查了路由和命名都正确后,根据网上的资料检查了标签是否正常闭合,发现都不存在;以下为闭合错误资料,可以优先参考检查:Golang模板展示时的错误_male1原创 2022-02-09 10:54:15 · 927 阅读 · 0 评论 -
Golang 上传文件到又拍云
准备安装又拍云官方的go-sdk# 获取又拍云官方库go get github.com/upyun/go-sdk/v3获取接口上传的文件avatar, _, err := c.Request.FormFile("avatar")上传又拍云初始化初始化又拍云服务,三个参数获取于又拍云后台 up := upyun.NewUpYun(&upyun.UpYunConfig{ Bucket: "Bucket", Operator: "Operator..原创 2022-01-17 18:07:12 · 528 阅读 · 0 评论 -
Gin-Vue-Admin 线上部署
前言在网上找的很多教程包括官方的都不够细致,很容易导致出现问题,所以特记录下部署的过程官方部署文档:部署教学 | Gin-Vue-Admin准备前端配置文件修改修改前端目录下的.env.production文件VUE_APP_SERVER_PORT:根据自己后端项目运行端口设置,我这里使用了8806 VUE_APP_BASE_PATH:官方设置为了线上ip,经测试设置为本地回环地址也没问题(最好根据官方,我先踩坑) VUE_APP_BASE_API:根据nginx设置的代原创 2022-01-14 18:27:32 · 5620 阅读 · 0 评论 -
Golang 处理复杂格式JSON数据(多类型混合)
起因在调取百度人体检测接口时,返回的JSON数据嵌套了多层,解析为map[string]interface()类型的数据后,在遍历取值过程中出现了一些异常,如下两个等:cannot range over person_info (type interface {})interface conversion: interface {} is []interface {}, not map[string]interface {}原始数据以下为返回的JSON数据{ "p.原创 2021-12-17 17:52:07 · 7959 阅读 · 0 评论 -
GORM v2 关联预加载Preload和Joins的区别
GORM 关联中Preload和Joins预加载数据的区别。原创 2021-11-30 10:09:21 · 3804 阅读 · 7 评论 -
GORM v2 一对一关联查询使用(Belongs To 、Has One)
前言说明:一个学生(students)拥有一条信息(information);相应的,一条信息(information)属于对应的一个学生(students)表结构students表CREATE TABLE `students` ( `id` INT ( 11 ) NOT NULL AUTO_INCREMENT, `name` VARCHAR ( 64 ) DEFAULT NULL, PRIMARY KEY ( `id` )) ENGINE = MyISA..原创 2021-11-29 17:58:35 · 3594 阅读 · 8 评论 -
GORM 执行结果判断问题(error nil问题)
起因使用GORM执行数据库操作时,返回了*DB,如果我们直接使用以下方式判断,会一直返回false,不能用作语句执行结果的判断 err := db.Create(&demand) if err != nil { return false, err.Error } return true, nil正确处理判断时需要使用返回的结构体的Error成员进行判断,如下即可进行正确返回 err := db.Create(&demand) if err.原创 2021-11-16 16:21:15 · 3114 阅读 · 0 评论 -
Golang微信小程序数据解密报错:invalid character “‘p‘“ looking for beginning of value
Golang 微信小程序加密数据解密算法实现错误解密出来的[]byte类型数据如果直接进行json.Unmarshal()会出现以下类型错误invalid character "'p'" looking for beginning of value解决需要去除填充,origData为解密出来的[]byte类型数据length := len(origData)unp := int(origData[length-1])data := origData[:(length -原创 2021-08-12 14:54:22 · 1876 阅读 · 0 评论 -
Golang 项目部署
Go 语言项目部署, Go 项目部署注:本教程不包含golang编译部分,请自行编译;项目使用supervisor进行部署。安装epel(已安装可以忽略)yum install epel-release安装supervisorSupervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动,这样只要在s原创 2021-07-30 15:28:40 · 2190 阅读 · 0 评论 -
Golang 字符串([]string)数组转整型([]int)数组
go字符串数组转整型数组,go string数组转int数组,go []string转[]int数组代码直接上代码func String2Int(strArr []string) []int { res := make([]int, len(strArr)) for index, val := range strArr { res[index], _ = strconv.Atoi(val) } return res}...原创 2021-07-29 10:08:58 · 4935 阅读 · 0 评论 -
Golang JSON的编码和解析
go JSON编码定义一个结构体用来放需要进行JSON编码的数据,结构体的字段名必须是大写开头的可导出字段,否则在解析时会解析不出来使用json.Marshal(v interface{}) ([]byte, error)进行JSON编码 type Userinfo struct { Id int `json:"id"` Username string `json:"username"` } u := &Userinfo{} u.Id = 1原创 2021-07-16 14:38:21 · 604 阅读 · 0 评论 -
Golang读取配置文件实现(yaml)
目录准备在项目根目录新建config配置文件目录,同时创建一个yaml格式的配置文件config.yaml,写入一些测试数据env: lang: golang system: win10author: lauwenapiTokenKey: Z2luLWNsaTIwMjEwNQ==apiTokenExpireTime: 1440apiTokenRebuildTime: 100读取实现安装读取配置文件这里使用到spf13/viper这个库,先安装go g.原创 2021-07-14 18:34:11 · 3820 阅读 · 0 评论 -
Golang 微信小程序加密数据解密算法实现
Go 语言 微信小程序加密数据解密算法实现代码实现本实现参考官方PHP例程实现,Go代码实现如下:func DecryptData (app_id, session_key, iv, encrypted_data string) (map[string]interface{}, error) { if len := strings.Count(session_key, "") - 1; len != 24 { return nil, errors.New("Invalid value原创 2021-07-13 16:01:53 · 1810 阅读 · 0 评论 -
Golang协程
go协程基本使用Go 协程是与其他函数或方法一起并发运行的函数或方法。Go 协程可以看作是轻量级线程。与线程相比,创建一个 Go 协程的成本很小。因此在 Go 应用中,常常会看到有数以千计的 Go 协程并发地运行。ex 1:package mainimport "fmt"func hello () {fmt.Println("hello goroutine")}func main () {go hello()fmt.Println("main...原创 2021-07-09 10:29:37 · 510 阅读 · 1 评论 -
Docker运行gin项目(go mod)
Dockerfile文件内容在gin项目根目录下创建Dockerfile配置文件# 指定基础镜像FROM golang# 维护人信息MAINTAINER lauwen "me@lauwen***.com"# 工作目录,即执行go命令的目录WORKDIR $GOPATH/src/gin# 将本地内容添加到镜像指定目录ADD . $GOPATH/src/gin# 设置开启go modRUN go env -w GO111MODULE=auto# 设置go代理RUN go原创 2021-06-22 23:30:34 · 1070 阅读 · 0 评论