登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> SoftHub关联区 >> 主题: golang 的 https 请求中忽略服务器证书错误     [回主站]     [分站链接]
golang 的 https 请求中忽略服务器证书错误
clq
浏览(179) - 2018-04-13 18:59:47 发表 编辑

关键字: golang_bug

[2018-08-08 03:15:27 最后更新]
golang 的 https 请求中忽略服务器证书错误

来自 https://segmentfault.com/q/1010000010136765
package main

import (
    "fmt"
    "net/http"
    "crypto/tls"
)

func main() {
    tr := &http.Transport{
        TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
    }
    client := &http.Client{Transport: tr}
    _, err := client.Get("https://xxxx/")
    if err != nil {
        fmt.Println(err)
    }
}

--------------------------------------------------

golang的http包无法获取https内容?http.Get("https://xxxx")运行到这里就卡住了
如果是http://则正常
goquery也是遇到https就卡住
不知道是什么原因

    2017年07月11日提问评论邀请回答编辑

是不是你访问的网站的https不合法了?

你可以尝试禁用证书检查选项试试看

package main

import (
    "fmt"
    "net/http"
    "crypto/tls"
)

func main() {
    tr := &http.Transport{
        TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
    }
    client := &http.Client{Transport: tr}
    _, err := client.Get("https://xxxx/")
    if err != nil {
        fmt.Println(err)
    }
}

    2017年07月11日更新

设置一个超时时间,如果超时检查目标网站https是否正常工作,检查下本机网络环境.

    client := &http.Client{
        Timeout: 5 * time.Second,
    }
    resp, err := client.Get("https://www.zhihu.com")

    2017年07月12日回答

遇到这个问题我觉得除了进行跳过https证书的验证之后最好还需要在本地看看是不是代理,很多代理服务器不支持https



总数:0 页次:1/0 首页 尾页  
总数:0 页次:1/0 首页 尾页  


所在合集/目录
golang的坑 更多
golang http 更多



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1