今天遇到一个小问题,业务方提供的url,我在本地浏览器,在机器上curl 以及 使用php的file_get_contents都可以GET到数据。但是在java项目里RestTemplate请求却返回403。
一般遇到403情况:
对方ng配置了防抓取的规则,或者业务上有防抓取的规则。
比较多见的如下:
1.请求头里带一些业务规定的refer
2.请求头里带cookie(比较多见)
3.请求头里带一些常规的user-agent(我就是因为在java里get的时候没有带agent)
我们自己在业务上做防抓取策略的时候基本也是两个点:1.ip 2.user-agent
所以当你遇到一个url在浏览器能请求通,但是代码里不通的时候,多想想是不是请求头里忘了什么东西?最常见的就是忘了ua