前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Golang|记录一些踩坑笔记

Golang|记录一些踩坑笔记

作者头像
TRY博客-简单的网络技术
发布2022-09-08 11:31:51
2590
发布2022-09-08 11:31:51
举报
文章被收录于专栏:用户7692554的专栏

至少我们曾经在一起过。

来自:一言

var xhr = new XMLHttpRequest(); xhr.open('get', 'https://v1.hitokoto.cn/'); xhr.onreadystatechange = function () { if (xhr.readyState === 4) { var data = JSON.parse(xhr.responseText); var hitokoto = document.getElementById('hitokoto'); hitokoto.innerText = data.hitokoto; } } xhr.send();

记录一些踩坑笔记

1.http.post包有时候会验证https证书的有效性,需要加上一下代码进行跳过https证书的验证.以及跟随302跳转

错误:x509: cannot validate certificate for xxx:xxx:xxx:xxx because it doesn't contain any IP SANs

查看代码

代码语言:javascript
复制
func Test(url string) {
	tr := &http.Transport{
		TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
	}
	c := &http.Client{
		Transport: tr,
		Timeout:   5 * time.Second,
		CheckRedirect: func(req *http.Request, via []*http.Request) error {
			return http.ErrUseLastResponse
		},
	}
	reqest, err := c.Get(url)
	if err != nil {
		return
	}

	defer reqest.Body.Close()
	if err != nil {
		fmt.Println("出错了!")
		return
	}

	body, err := ioutil.ReadAll(reqest.Body)
	//fmt.Println(string(body))
	pageStr := string(body)
	if reqest.Status == "302 Found" {
		log.Println("有302重定向,重定向内容.", nurl)
	}
	
}

2.golang设置图标与uac权限

点击查看ico.manifest内容

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    version="1.0.0.0"
    processorArchitecture="x86"
    name="controls"
    type="win32"
/>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="*"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
</dependency>
 <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
   <security>
     <requestedPrivileges>
      <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
      </requestedPrivileges>
   </security>
 </trustInfo>
</assembly>
代码语言:javascript
复制
go get github.com/akavel/rsrc 
执行 rsrc.exe -manifest ico.manifest -o app.syso -ico app.ico 这样会生成一个叫做app.syso的文件,把这个文件和main.go放到一起

温馨提示

rsrc -arch 386 -manifest main.exe.manifest -ico icon.ico rsrc -arch amd64 -manifest main.exe.manifest -ico icon.ico

可指定位数

代码语言:javascript
复制
然后直接编译即可

3.利用strings.Contains判断字符串是否存在

点击查看相关代码

代码语言:javascript
复制
if strings.Contains("try", "t")  {  //如果存在的话,会返回true
    fmt.Println("t字符存在与try字符串中")
} else {
   fmt.Println("t字符不存在与try字符串中")
	}

4.设置国内软件源 GOPROXY=https://goproxy.cn,direct

5.golang编译时去除文件相关信息

代码语言:javascript
复制
go build -trimpath -ldflags="-w -s"

Golang也太好玩了吧.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 至少我们曾经在一起过。
    • 记录一些踩坑笔记
    相关产品与服务
    区块链
    云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档