Go 在重定向错误消息中保留原始URL

Go 在重定向错误消息中保留原始URL,go,Go,我试图通过向特定页面发送GET请求来确定特定网站上是否存在网页。但是,如果该网页不存在,网站会将请求重定向到主页 为了克服这个问题,我已经实现了重定向预防,如上所述,它看起来像 func重定向检查(req*http.Request,通过[]*http.Request)错误{ 如果req.Response.StatusCode==200{ //没有发生重定向 归零 } //返回错误代码 返回错误。新建(“网页不存在”) } 重定向预防工作正常,但是,如果我向get请求https://someur

我试图通过向特定页面发送
GET
请求来确定特定网站上是否存在网页。但是,如果该网页不存在,网站会将请求重定向到主页

为了克服这个问题,我已经实现了重定向预防,如上所述,它看起来像

func重定向检查(req*http.Request,通过[]*http.Request)错误{
如果req.Response.StatusCode==200{
//没有发生重定向
归零
}
//返回错误代码
返回错误。新建(“网页不存在”)
}
重定向预防工作正常,但是,如果我向
get请求https://someurl.com/page1
,我收到的错误消息是

Get "https://someurl.com": webpage doesn't exist
如何配置错误消息,以便在错误消息中保留原始URL

然后,错误消息应该是

Get "https://someurl.com/page1": webpage doesn't exist
文件说:

作为一种特殊情况,如果CheckRedirect返回ErrUseLastResponse,则返回的最新响应的主体未关闭,同时返回一个nil错误

通过从函数返回来修复:

func RedirectCheck(req *http.Request, via []*http.Request) error {
    return http.ErroUseLastResponse
}
文件说:

作为一种特殊情况,如果CheckRedirect返回ErrUseLastResponse,则返回的最新响应的主体未关闭,同时返回一个nil错误

通过从函数返回来修复:

func RedirectCheck(req *http.Request, via []*http.Request) error {
    return http.ErroUseLastResponse
}