Golang http.Get阻止资源

时间:2016-07-28 10:47:08

标签: go filter get resources

如何使用Golang的net / http http.Get(url string),但阻止请求中的某些网址和资源?

E.g。

http.Get("https://google.com") // But somehow block the main CSS file.

1 个答案:

答案 0 :(得分:1)

您无需阻止网址和资源,因为net / http Get()不会自动执行所包含链接或资源的提取。

您可能会将其与浏览器获取网址的方式混淆。浏览器会发出请求,然后跟进获取所有资源(Javascript / CSS /图像/视频等)但是Go的net / http请求更低级别 - 它更像是curl fetch - 它将遵循默认的重定向,但否则它只会获取对GET请求的单个响应。您可以将发出调用`http.Get(“https://google.com”)的结果视为与浏览器中的页面源(加上HTTP标头和响应代码)类似。此响应可能包含许多链接和资源的其他URL - 如果您愿意,您可以解析它们并请求其中的部分或全部(省略您想要“阻止”的内容),例如低级Web爬虫。