-1
url.ResolveReferenceを使用してベースURLに相対パスを追加する簡単なWebサーバーを作成しました。そして、http.Get()を使用して結果のURLのコンテンツを取得したいのですが、問題はhttp.get()が文字列を引数として取り、タイプが* url.URLのオブジェクトがあることです。この問題を解決する方法?http.Getへの引数にbaseURL(type * url.URL)をタイプ文字列として使用できません
私のコードを怒鳴る与えられます。
package main
import (
"fmt"
"io/ioutil"
"log"
"net/http"
"net/url"
)
func factHandler(w http.ResponseWriter, r *http.Request) {
str1 := "http://www.meaningfultype.com/"
u1, _ := url.Parse(str1)
str2 := "/clarendon.html"
u2, _ := url.Parse(str2)
u3 := u1.ResolveReference(u2)
fmt.Println("url:", u3)
res, err := http.Get(u3)
if err != nil {
log.Fatal(err)
}
robots, err := ioutil.ReadAll(res.Body)
res.Body.Close()
if err != nil {
log.Fatal(err)
}
contentType := res.Header.Get("Content-Type")
w.Header().Set("Content-Type", contentType)
w.Write(robots)
}
'URL'はない'文字列() 'メソッドを持っていますそれ。 –