服务器能否拒绝非浏览器发起的HTTP请求?
互联网各领域资料分享专区(不定期更新):
Sheet
前言
服务器可以采取多种方法来拒绝非浏览器发起的HTTP请求,但需要明确的是:HTTP协议本身并不限制客户端类型,任何符合协议规范的请求都会被处理。因此,拒绝非浏览器请求需依赖额外策略。
正文
一、基于请求头过滤
1、User-Agent检查
浏览器会在请求头中携带User-Agent
标识(如 Mozilla/5.0 Chrome/...
),服务器可拒绝未包含常见浏览器标识的请求。
-
- 优点:简单易实现。
- 缺点:极易伪造(如爬虫可伪装成浏览器)。
2、验证其他标准头
浏览器通常会自动附加某些头字段,如 Accept
、Accept-Language
、Referer
等。若请求缺失这些头,服务器可拒绝。
-
- 例如:检查是否存在
Accept: text/html
或 <
- 例如:检查是否存在