go
小小的产品经理
你回家了?我在等你呢
展开
-
GO:gin处理前端跨域问题
目标:解决前端调用gin写的接口浏览器因为跨域无法调用的问题,表现为postman可以请求接口但是浏览器无法请求到接口; 设置后台 1)引用gin包和net包 package login import ( "github.com/gin-gonic/gin" "net/http" ) 2)定义Cors(),将所有的请求进行放行; func Cors() gin.HandlerFunc { return func(c *gin.Context) { method := c.Request.M原创 2021-04-23 18:48:23 · 620 阅读 · 0 评论 -
GO:从数据库总获取一个字段并组成数组
目标:获取数据库里的一个字段,并组成[1,2,3,4,5,6]这样的数组 源码 func Getdict_mysql(re_type string) []string { intre_type, _ := strconv.Atoi(re_type) db ,_ := sql.Open("mysql","root:123456@tcp(127.0.0.1:3306)/bill?charset=utf8") type Redict struct { use_type s原创 2021-02-13 10:23:40 · 1185 阅读 · 0 评论 -
GO:日志打印
目标:使用go语言标准库log进行日志的打印 需要用到的包 import ( "fmt" "log" "os" ) 封装日志打印函数 func Printlog(filename,message string) { logFile, logErr := os.OpenFile("log/"+filename, os.O_CREATE|os.O_RDWR|os.O_APPEND, 0644) if logErr != nil { fmt.Println原创 2021-02-13 10:01:43 · 897 阅读 · 0 评论 -
GO:单文件上传和多文件上传
引入包 import ( "github.com/gin-gonic/gin" "fmt" "log" ) 定义主函数的两个接口 func main () { router := gin.Default() //仅用作单文件上传接口 router.POST("/upload", uploadfile) //既可用作但文件也可以用作多文件上传接口 router.POST("/uploads", Mult_uploadfile) router.Run(":8080") } 单文件上传的原创 2021-02-08 21:22:27 · 1025 阅读 · 0 评论 -
解析gin-gonic / gin写web接口
实例代码来自于gin-gonic / gin: gin的git. 快速进行一个get请求 原例子 package main import "github.com/gin-gonic/gin" func main() { r := gin.Default() r.GET("/ping", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "pong", }) }) r.Run() // listen and serve on 0原创 2021-02-08 18:03:01 · 1046 阅读 · 0 评论 -
GO:对json文件进行修改
引入包 import ( "encoding/json" "fmt" "os" "io/ioutil" ) 创建json文件的结构体 //创建结构体 type Person struct { Name string age int32 Sex bool Hobbies []string } 写入初始化的值 func writejson() { //新建一个结构体实例 person := Person{"David", 30, tru原创 2021-02-08 14:07:34 · 1437 阅读 · 0 评论 -
GO实现对mysql增删改查
需要引入的包 import ( "fmt" _"github.com/go-sql-driver/mysql" //mysql快捷处理的一个包 "github.com/jmoiron/sqlx" "encoding/json" ) 定义一个数据库 var Db *sqlx.DB 初始化时实例一个连接 func init() { database, err := sqlx.Open("mysql", "用户名:密码@tcp(数据库地址:3306)/库名称?charset=utf8"原创 2021-02-07 19:33:56 · 239 阅读 · 0 评论 -
GO:理解指针的作用
概念和意义的解析 GO菜鸟教程对指针的解释: 一个指针变量指向了一个值的内存地址。 查阅资料对指针加深理解 1)指针类型用于传递地址, 而不是传递值, 因为 golang 的函数, 所有的参数都是传递一个复制的值. 如果值的体积过大, 那么就会严重降低效率, 而传递一个地址, 就会大大提高效率. 另外传递指针也能让 go 函数实现对变量值的修改. 2)如果一个复杂类型的值被传递了若干次后, 和自己比较, 虽然用于保存的容器和名称变了, 但用于保存值的地址不变, 这个时候, 只要使用指针进行对比, 就知原创 2021-02-07 13:15:55 · 2294 阅读 · 0 评论 -
go语言对结构体、map和切片进行json化
引入json处理的包 getjosn.py import ( "fmt" "encoding/json" ) 将结构体进行json化 创建结构体 getjosn.py type Teacher struct { Name string Age int Birthdate string Sal float64 } 处理结构体的json化 getjosn.py func structTeacher() { //创建一个结构体的实例 teacher1 := Teacher{ Name原创 2021-02-06 20:49:47 · 258 阅读 · 0 评论 -
GO写web接口(采集mysql数据向前端传json)
安装两个包 打开控制台 //安装web接口包 go get github.com/gin-gonic/gin //安装mysql操作包 go get github.com/go-sql-driver/mysql 引入需要支持的包 geymysql.go import ( //引入mysql的处理 "database/sql" _"github.com/go-sql-driver/mysql" "fmt" //引入json格式化 "encoding/json"原创 2021-02-06 20:25:46 · 996 阅读 · 0 评论