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:
		
						commit
						adfb9a9af4
					
				@ -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 请求失败
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user