后端go基础 | 青训营笔记

40 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第N天

1.go语言的简介

image.png

开发环境

一般使用vscode或者golang

image.png 如果github下载速度慢可以使用第三个配置

也可以在线云编译 image.png

2. 基础语法

(1)变量声明 image.png (2)ifelse

image.png (3)循环

image.png

for后面不跟数据则为死循环

(4)swich

image.png 没有穿透性,执行完一个case自动跳出

(5)数组

image.png 长度不可改变

(6)切片

image.png 用make()创建 切片长度可以改变 append()追加

(7)map(哈希/字典)

image.png

(8)range

image.png

range返回值一般为下标加数据

(9)函数

image.png go中函数可以返回多个值 一般来说会返回两个值,一个为目标值,一个为err

(10)指针

image.png 对地址进行操作,保留有c语言中指针的功能

(11)结构体

image.png 以上为一些基础操作

(12)结构体方法

image.png

只针对于某一类结构体的函数,也就是方法

(13)错误处理

image.png

在函数中额外设置返回值,若有错误则在err返回值中写入错误,若无错误,则传回数据和一个nil

(14)字符串操作

操作 image.png 格式化

image.png

(15)json操作

image.png

保证结构体中变量首字母为大写(即公开字段),则可以使用json进行序列化

(16)时间处理

image.png

一般使用time函数获取当前时间

(17)字符串和数字的转换

image.png 都在strconv包中

(18)进程信息获取

image.png os.Args获取某行的参数

3.实战

1.猜谜游戏

猜谜游戏主要徐熙到一种复杂的方式去获取输入流,同时对循环以及if判断的熟悉

2.在线词典

学习要点 1.抓包 在目标网页中进入开发者模式(右键鼠标检查) 找到network板块,找到对应名字名字的post请求,之后复制请求代码, 2.请求代码生成 到转换器中转换为go的请求代码,请求代码粘贴之后 3.json示例化 输入数据不能直接输入json数据,应该输入变量,所以要进行json示例化,构建对应输入结构体,到时候将结构体转换为json数据传进去之前转换的申请代码里面 4.将返回值response返示例化 将网站中的response复制到转换器中,转换得到返回的数据对应的结构体 5.按条件输出 增加输出的代码的时候要检查状态码,防止出错

3. socks5代理

了解一下socks5实现原理

总结

今天学了

1.go基础 2.抓包 3.代理服务器原理