Как использовать http.Get запрос внутри функции обработчика - PullRequest
0 голосов
/ 08 ноября 2018

Как сделать http.Get запрос внутри функции обработчика? Например, этот простой код «должен» возвращать пустую страницу в браузере localhost: 8080, но он сходит с ума. Что я пропустил в школе?

package main

import "net/http"

func index(w http.ResponseWriter, r *http.Request) {
    _, err := http.Get("www.google.com")
    if err != nil {
        panic(err)
    }
}

func main() {
    http.HandleFunc("/", index)
    http.ListenAndServe(":8080", nil)
}

1 Ответ

0 голосов
/ 08 ноября 2018

Проблема заключается в том, что вы должны использовать протокол (например, https://) в функции Get:

_, err := http.Get("https://www.google.com")

Ошибка в исходном коде Get www.google.com: unsupported protocol scheme "".

enter image description here

http.Get() ожидает URL, а www.google.com не является URL;URL начинается с схемы .Несмотря на то, что в браузере обычно набирается «www.google.com», он по-прежнему не является полным URL;дружественные браузеры автоматически добавляют «http://"» или «https://"» перед отправкой запроса.http.Get() не собирается этого делать;он ожидает, что правильно сформированный URL-адрес начнется с.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...