首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Go入门到精通系列

Go入门到精通系列

作者头像
leon公众号精选
发布于 2022-04-27 08:18:04
发布于 2022-04-27 08:18:04
42200
代码可运行
举报
运行总次数:0
代码可运行

Go入门到精通系列

安装Go

windows

  • 下载地址

https://go.dev/doc/install;windows下安装较简单,msi程序点点点就可以,不需要配置环境变量等;最新版本为1.17.7

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
>go version
go version go1.17.7 windows

安装依赖

  • 安装gopkgs
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
go install -v github.com/uudashr/gopkgs/v2/cmd/gopkgs@latest
  • 创建go.mod
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
go mod init example/hello

go.mod文件一旦创建后,它的内容将会被go toolchain全面掌控。go toolchain会在各类命令执行时,比如go get、go build、go mod等修改和维护go.mod文件。

  • 设置代理 当使用go get 还原依赖包时需远程下载,go仓库又是依赖github,会造成请求无响应的错误,此时需要设置代理。goproxy.cn是专门服务于中国的,依赖于七牛云。
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 go env -w GOPROXY=https://goproxy.cn

创建server.go文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package main

import (
  //echo是go的web开发框架
  "github.com/labstack/echo/v4"
  "github.com/labstack/echo/v4/middleware"
  "net/http"
)

func main() {
  // Echo instance
  e := echo.New()

  // Middleware
  e.Use(middleware.Logger())
  e.Use(middleware.Recover())

  // Routes
  e.GET("/", hello)

  // Start server
  e.Logger.Fatal(e.Start(":1323"))
}

// Handler
func hello(c echo.Context) error {
  return c.String(http.StatusOK, "Hello, World!")
}

执行

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
go run server.go

报错

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
server.go:4:3: no required module provides package github.com/labstack/echo/v4; to add it:
        go get github.com/labstack/echo/v4
server.go:5:3: no required module provides package github.com/labstack/echo/v4/middleware; to add it:
        go get github.com/labstack/echo/v4/middleware

以上错误提示需要指定go get 安装两个依赖,接下来按提示执行两个命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
go get github.com/labstack/echo/v4
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 go get github.com/labstack/echo/v4/middleware

再次执行 go run server.go

控制台出现:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
PS F:\workcode\GoCode\hello> go run .\server.go

   ____    __
  / __/___/ /  ___
 / _// __/ _ \/ _ \
/___/\__/_//_/\___/ v4.6.3
High performance, minimalist Go web framework
https://echo.labstack.com
____________________________________O/_______
                                    O\
⇨ http server started on [::]:1323

浏览器访问地址 http://localhost:1323/

出现Hello, World!

VsCode开发GO

  • 安装插件

1、Go

2、Bracket Pair Colorizer

3、Visual Studio IntelliCode

现在你可以F12或者Ctrl+鼠标左键进入源代码了

  • 调试

在vscode中直接F5即可,无需配置launch.json,目录中会生成__debug_bin.exe

常见问题

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.\server.go:4:3: imported and not used: "fmt"

go代码检测到未使用的引用会直接报错,解决办法在引用前添加_即可

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package main

import (
  _"fmt"
)
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-02-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 架构师高级俱乐部 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
DiagTrack、WinSAT、Application Experience、Diagnostic等服务或计划任务可能影响系统性能
DiagTrack、WinSAT、Application Experience、Diagnostic等服务或计划任务可能影响系统性能
Windows技术交流
2024/01/08
6630
云服务器DIY Win10、Win11自定义镜像
DIY Win10自定义镜像,简单操作的话,用2016/2019 Windows公共镜像买台2c4g的S6(不要低于S6,例如不要是S5等低代次;另外,注意系统盘剩余空间留够30GB左右),然后挂个10G的数据盘,从微软官网下载win10 iso到数据盘。
Windows技术交流
2023/10/18
2.3K0
排查一些Windows问题时,为了去除无关变量,建议做个快照后禁止defender和腾讯云平台组件,确认原因后再回滚快照
脚本适用腾讯云≥2012R2的Windows Server系统的云服务器,其他情形没测试过,如果要试,先做备份。
Windows技术交流
2023/11/07
4190
禁止defender自动更新
一般是不建议禁止defender自动更新的,但如果你有其他替代的安全方案了,觉得defender自动更新有隐患,想干掉,那这篇文档非常适用。耗费了不少心血在server2016-2022和win10、win11上对比实践。
Windows技术交流
2023/06/07
1.4K0
Windows Server禁止更新(复杂版)
上面powershell代码如果执行了没有效果,应该是权限不够,正确的办法应该是提权后执行命令,完整的powershell命令如下(我提前把AdvancedRun.exe放到C:\Windows\了),提权参考我的这篇文档:https://cloud.tencent.com/developer/article/2285183
Windows技术交流
2023/12/28
4530
Win11彻底关闭Defender(包括禁用、删除Defender服务和文件夹)
一般是不建议禁止defender自动更新或者彻底关闭Defender的,但如果你有其他替代的安全方案了,觉得defender有干扰业务隐患,想干掉,那这篇文档非常适用。耗费了不少心血在server2016-2022和win10、win11上对比实践。
Windows技术交流
2023/05/26
25.3K0
NT10系统安装wmic和netfx3并卸载AzureArcSetup
NT10系统安装wmic和netfx3并卸载AzureArcSetup,这段代码我在用原版ISO安装系统时在自动应答文件里有使用。
Windows技术交流
2024/12/26
1930
渲染镜像优化
一、如果需要非sysprep(即不入域)的镜像,现有镜像买一台带公网的机器,做如下几个优化:
Windows技术交流
2023/03/23
9190
渲染业务镜像优化
SystemPropertiesPerformance.exe /pagefile
Windows技术交流
2022/06/22
7940
win7、win10、win11,安装系统跳过创建用户,直接启用 Administrator
1、按 Shift+F10 打开 cmd执行这2句命令启用Administrator
Windows技术交流
2024/04/01
4.4K0
Win11系统,为了右键菜单返回Win10样式用了StartAllBack在系统更新后导致explorer闪屏
问题:Win11系统,StartAllBack在系统更新后导致explorer闪屏
Windows技术交流
2023/09/14
1.8K0
腾讯云Windows时间跳变到未来若干天的解决方案
解决方案,管理员身份执行以下powershell代码设置可靠的内网ntp server校时,前提是内网ntp server域名解析正常
Windows技术交流
2024/09/02
2830
去除Windows Defender安全通知
参考https://cloud.tencent.com/developer/article/2285183
Windows技术交流
2024/01/31
3940
红蓝对抗之致盲 Windows defender
Microsoft Defender 防病毒软件在 Windows 10 和 Windows 11 以及 Windows Server 版本中可用。
亿人安全
2022/12/23
1.1K0
红蓝对抗之致盲 Windows defender
制作镜像前建议以管理员身份分段执行如下代码净化镜像
黑石或其他物理机除外,仅限普通云服务器,简单点的话,就是能访问公网的≥2016的高版本系统,以管理员身份打开powershell命令行执行这2句命令即可
Windows技术交流
2021/09/01
1.1K1
导入Windows自定义镜像如何内网ntp server校时
内容如下(我配置开机计划任务在开机时校时,校时SpecialPollInterval是5秒,根据各人需求,可以适当调大,不调也可以,如果调的话,注意要满足SpecialPollInterval∈【2^MinPollInterval, 2^MaxPollInterval】,比如5∈【2^2, 2^6】):
Windows技术交流
2023/09/12
3640
有显卡的windows机器如果担心显卡驱动自动更新影响稳定性,可以设置系统更新排除更新驱动程序
完全禁止的话,把windows update服务从services.msc列表设置开机启动为禁止即可
Windows技术交流
2022/08/11
1.2K0
时间偏差超过15小时(54000秒),无法自动校时的解决方案
借鉴https://blog.csdn.net/weixin_43673589/article/details/109144725
Windows技术交流
2021/12/16
1.8K0
Windows域控时间同步
Windows配置域控参考我写的 https://cloud.tencent.com/developer/article/1925795 ,实际就4句命令而已,很简单。
Windows技术交流
2022/08/09
8K0
【玩转腾讯云】defender添加排除项(命令行和图形界面,5种方式)
defender从NT10开始,NT10包括2016/2019/2022/win10/win11/未来发布的windows系统,不包括≤2012R2的系统
Windows技术交流
2022/12/19
3.4K0
推荐阅读
相关推荐
DiagTrack、WinSAT、Application Experience、Diagnostic等服务或计划任务可能影响系统性能
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验