课程代码运行流程及bug处理| 青训营笔记

459 阅读2分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的第1篇笔记

第一次课

猜数游戏

input = strings.TrimSuffix(input, "\r\n") // windows 环境下需要\r\n

在线词典

报错 Did you press "Copy as cURL (cmd)" instead of "Copy as cURL (bash)"? Only bash commands are supported.

network里,dict,copy url时注意选中bash

SOCKS5代理

右键运行之后在cmd黑框框里

nc -nv 127.0.0.1 1080

报错 nc : 无法将“nc”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确

安装netcat,命令行执行

nc -nv 127.0.0.1 1080 hello 输出hello

报错 Invoke-WebRequest : 找不到接受实际参数“127.0.0.1:1080”的位置形式参数。

右键运行之后,在cmd命令行执行

curl --socks5 127.0.0.1:1080 -v http://www.qq.com

第一次curl稍微慢一点,同时要CTRL+C停止程序才会返回。

作业

有道翻译

警告--compressed is not a supported option 好像没什么影响

处理request

Request Payload 在headers的最下面 注意json格式key,value都要引号

{"trans_type": "en2zh", "source": "be"}

火山翻译同彩云翻译,Request Payload。 有道翻译,From Data

juejin.cn/post/684490…

goroutine是go语言中最为NB的设计,也是其魅力所在,goroutine的本质是协程,是实现并行计算的核心juejin.cn/post/699630…

第二次课

项目里会报错gin,先安装gin框架,之后根据代码波浪线提示导入代码,删除import里多余的代码。

命令行 curl 127.0.0.1:8080/community/page/get/1 应该是我给项目文件夹配置了GOPATH,GoLand编译器里也可以用curl了 浏览器输入 http://127.0.0.1:8080/community/page/get/1

报错未解析的引用,但是可以运行。

报错未解析的引用但是可以运行.png

Postman

Params对应c.Query

Body下,form-data对应GetPostForm

func Register(c *gin.Context) {
   username := c.Query("username")
   password := c.Query("password")
   topicId, _ := c.GetPostForm("topic_id")
   content, _ := c.GetPostForm("content")
}

ShouldBind方法绑定结构体读取输入

type UserLoginRequest struct {
    Username string `form:"username" json:"username" binding:"required"`
    Password string `form:"password" json:"password" binding:"required"`
}
var request UserLoginRequest
if err := ctx.ShouldBind(&request); err != nil {
   ctx.JSON(http.StatusOK, common.Response{
      StatusCode: common.ParamInvalid,
      StatusMsg:  "Parameter parsing error",
   })
   return
}

\