Я пытаюсь добиться чего-то похожего на share
кнопку Go Playground.
При нажатии кнопки с именем share
текущий ответ HTML сохраняется в файл. Это также включает в себя все, что может видеть пользователь.
Что я могу сделать до сих пор
- я могу успешно сохранить страницу HTML в файл.
- Я могу получить и сохранить целую страницу из URL, используя HTTP Get.
Предостережения
- я не могу сохранить текущую веб-страницу, над которой я работаю.
Это мой код для получения удаленных URL:
func HTTPGet(url string, timeout time.Duration) (content []byte, err error) {
request, err := http.NewRequest("POST", url, nil)
if err != nil {
return
}
ctx, cancel_func := context.WithTimeout(context.Background(), timeout)
request = request.WithContext(ctx)
response, err := http.DefaultClient.Do(request)
if err != nil {
return
}
defer response.Body.Close()
if response.StatusCode != 200 {
cancel_func()
return nil, fmt.Errorf("INVALID RESPONSE; status: %s", response.Status)
}
return ioutil.ReadAll(response.Body)
}
Надеюсь, это не повлечет за собой возиться с DOM вручную.