Golang – Retrieve Local File Using Default API Library

NOTE: page is the HTML file location parameter. For local files, this starts with file://
func main() {
        flag.Parse()

	if page == "" {
		fmt.Println("HTML page location must be defined")
		return
	}
	client := http.Client{}
	if strings.HasPrefix(page, "file") {
		transport := &http.Transport{}
		transport.RegisterProtocol("file", http.NewFileTransport(http.Dir(".")))
		client.Transport = transport
	}
	response, err := client.Get(page)
	if err != nil {
		fmt.Println("Error retrieving HTML page: " + err.Error())
	}
	defer response.Body.Close()

        ...
        

Leave a Reply