果然我还是应该写点东西记录些什么
前言
据mentor说Google是更优秀的学术平台(
以下内容为mentor所授,鸣谢
go语言
go语言,一个感觉起来包含了很多语言元素的语言,什么c的printf啊,Pascal的:=啊,Python的不加分号啊之类的(划
具体的切入从下载开始
学生党使用自己的edu.com可以白嫖toolbox的goland

学习网页
gin框架
在goland的terminal端输入go mod init xxx
这个xxx是你取的项目名字,比如logindemo之类的
go有一个自己的包管理,叫做go mod,他会帮你自动解析,导入包
输入刚才的命令之后,应该就会在文件列表见到一个go.mod

配置一下setting

goproxy是go自带的一个代理,用来快速导入国外网站的库
这个时候打开一个go文件,输入import “github.com/gin-gonic/gin”,发现这个是红色的,证明有错误。
鼠标移过去会有一个sync啥啥啥的,点他一下,下方应该会有一个process在跑,就是它在自动帮你导入这个包,它不红了,就导入完成,就可以直接用里面的东西了
如果它跑完了,你打开go.mod,会看到这个

就证明这个库已经被加进了当前的运行环境,就可以调里面的东西了
前后端“交流”
这里会有我的第一个前后端玩耍代码辣(
mentor推荐的学习网页

作为一个什么基础知识也没有的先放上科普
现代的web开发是前后端分离的,前端呢,就是你看到的界面,渲染,网页设计;后端更注重逻辑,数据库之类的东西。那么前后端之间会需要一种东西来进行信息传递和交互,这就是下面的那个东西,json

这句话就是处理一下读到的json,把它按照格式来解析,并且装进结构体里

格式就是这个样子
比如如果传递过来的json带有这个字段:

那么根据解析规则

他就会把roomType这个字段给解析出来,存进结构体的这个成员里
这样,你就向后台的服务器传递了一次信息,用json的方式
代码:
package main
import (
"github.com/gin-gonic/gin"
"log"
"net/http"
)
type Creattest struct {
Username string `json:"username"`
}
func main() {
text:=make(map[string]string)
text["who"]="tql"
text["sq"]="tcl"
r:=gin.Default()
r.POST("/",func(c *gin.Context){
var st Creattest
err:=c.BindJSON(&st)
if (err!=nil){log.Fatal(err)}
wa, ok := text[st.Username]
if ok {
c.JSON(http.StatusOK,gin.H{"ans":wa})
} else {
c.JSON(http.StatusOK,gin.H{"error":"not found"})
}
})
r.Run(":8000");
}
写好了之后,下一个叫做postman的东西进行测试

配置的时候tasks点全点上(

弄成这样然后点send(当然,你本地的.go也需要先run

由于这两条语句,会给前端反应出相应的结果

此时,我们就完成了一次前后端交流
最后
以上就是优秀热狗最近收集整理的关于冰岩作坊Task1-----go语言+gin框架+前后端“交流”的全部内容,更多相关冰岩作坊Task1-----go语言+gin框架+前后端“交流”内容请搜索靠谱客的其他文章。
发表评论 取消回复