将请求发送到Https站点

时间:2018-06-16 09:48:01

标签: go https get

基本上,通过goLang,我尝试在https网站上发送请求以检查网站上是否有项目。 我试图尝试向主站点发出请求,但是继续拒绝访问并且需要一种方法来解决这个问题,我试图从正文中获取信息以将其分离并找到正确的ID以检查是否存在在网站上。

package main

import (
    "fmt"
    "net/http"
    "io/ioutil"
)

func main() {

   url := "https://www.jdsports.co.uk/"

   req, _ := http.NewRequest("GET", url, nil)

   res, _ := http.DefaultClient.Do(req)

   defer res.Body.Close()

   body, _ := ioutil.ReadAll(res.Body)

   fmt.Println(string(body)) 
}

1 个答案:

答案 0 :(得分:0)

经过一段时间的测试,看起来该特定网站正在使用Akamai Ghost,并且已经配置为阻止默认的go http包用户代理。

默认用户代理似乎是Go-http-client/1.1

如果您更改了用户代理

req.Header.Set("User-Agent", "my-client-app")

请求将起作用。但是,有问题的网站似乎不希望以编程方式进行爬网。也许你应该尊重他们的意愿。