Skip to content

allow {InsecureSkipVerify: true} for http.Client.get(subscription_link) #42

@ggzzzzzzz

Description

@ggzzzzzzz

vi web/profile.go
#######################
package web

import (
"net/http"
"crypto/tls"
#######################

// support proxy
// concurrency setting
// as subscription server
// profiles filter
// clash to vmess local subscription
func getSubscriptionLinks(link string) ([]string, error) {
tr := &http.Transport{
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
}
c := http.Client{
Timeout: 20 * time.Second,
Transport: tr,
}
resp, err := c.Get(link)
###########################

Sometimes I will use python3 http.server to start https server to serve subscription link, {InsecureSkipVerify: true} is convenient for such a scenario.

#!/usr/bin/env python3
#by Honghe
#Ported to Python 3 by Telmo "Trooper" (telmo.trooper@gmail.com)

#Original code from:
#http://www.piware.de/2011/01/creating-an-https-server-in-python/
#https://gist.github.com/dergachev/7028596

#To generate a certificate use:
#openssl req -newkey rsa:4096 -nodes -keyout key.pem -x509 -days 365 -out cert.pem

from http.server import HTTPServer, SimpleHTTPRequestHandler
import ssl

port = 4443
httpd = HTTPServer(('127.0.0.1', port), SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket(httpd.socket, keyfile='key.pem', certfile="cert.pem", server_side=True)

print("Server running on https://127.0.0.1:" + str(port))

httpd.serve_forever()

##################################
Above solution tested, it works

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions