douzhigan1687 2019-05-21 13:07 采纳率: 0%
浏览 647
已采纳

curl能够从https获取; 但是从golang的http.get(),相同的https URL无法正常工作

When I do curl https://10.184.96.62:3000/status, server sends back json data. All good.

Using the below golang code, the application prints :

2019/05/21 18:29:15 Get https://10.184.96.62:3000/status: x509: cannot validate certificate for 10.184.96.62 because it doesn't contain any IP SANs

package main

import (
        "log"
        "net/http"
)

func main() {
        _, err := http.Get("https://10.184.96.62:3000/status")
        if err != nil {
                log.Fatal(err)
        }
}

What am I missing?

  • 写回答

2条回答 默认 最新

  • dongyang7152 2019-05-24 12:48
    关注

    The problem was with the certificate I generated. I used openssl to create a self-signed certificate. As I shared, curl was able to use it to establish connection with the server. But not the go application.

    In some forum I saw a comment that said that getting openssl to work in this scenario is tricky. So I used this go code to generate the certificate. Using this certificate, go app was also able to make the request with out making any change to the source code I shared in my question.

    Hope this helps some one in need.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化