Merge pull request #122 from techotaku/service-url-improvement

Improve HTTPS certificate checking logic.

Co-authored-by: techotaku <1948179+techotaku@users.noreply.github.com>
This commit is contained in:
₦₳ł฿₳ 2021-05-08 02:04:55 -07:00 committed by GitHub
commit adfb9a9af4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -9,9 +9,9 @@ import (
"log" "log"
"net" "net"
"net/http" "net/http"
"net/url"
"os" "os"
"os/exec" "os/exec"
"strings"
"time" "time"
"github.com/blang/semver" "github.com/blang/semver"
@ -186,16 +186,21 @@ func doTask(task *pb.Task) {
} }
if err == nil { if err == nil {
// 检查 SSL 证书信息 // 检查 SSL 证书信息
if strings.HasPrefix(task.GetData(), "https://") { serviceUrl, err := url.Parse(task.GetData())
c := cert.NewCert(task.GetData()[8:]) if err == nil {
if c.Error != "" { if serviceUrl.Scheme == "https" {
result.Data = "SSL证书错误" + c.Error c := cert.NewCert(serviceUrl.Host)
if c.Error != "" {
result.Data = "SSL证书错误" + c.Error
} else {
result.Data = c.Issuer + "|" + c.NotAfter
result.Successful = true
}
} else { } else {
result.Data = c.Issuer + "|" + c.NotAfter
result.Successful = true result.Successful = true
} }
} else { } else {
result.Successful = true result.Data = "URL解析错误" + err.Error()
} }
} else { } else {
// HTTP 请求失败 // HTTP 请求失败