概述
果然我还是应该写点东西记录些什么
前言
据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框架+前后端“交流”所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复