浏览器和程序化 http 请求之间是否有任何可检测到的差异

发布于 2024-10-18 21:31:10 字数 39 浏览 3 评论 0原文

有没有办法从标头或其他数据判断请求是来自浏览器还是非浏览器程序?

Is there any way to tell from headers or other data, whether a request is from a browser or non-browser program?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

爱殇璃 2024-10-25 21:31:10

浏览器一个编程式的HTTP请求。
它只是碰巧有一个用户在它前面。

不过,某些编程式 HTTP 请求不会包含 User-Agent 标头。


您可以做一些奇特的事情,例如使用 Javascript 发送记录的鼠标移动并以统计方式检查它们,并且非浏览器客户端可以模拟它们。

或者您可以只使用验证码。

The browser is a programmatic HTTP request.
It just happens to have a user in front of it.

Some programmatic HTTP requests won't include a User-Agent header, though.


You could do something fancy, such as sending recorded mouse movements using Javascript and checking them statistically, and the non-browser client can simulate them.

Or you could just use a CAPTCHA.

酒解孤独 2024-10-25 21:31:10

您可以通过检查用户代理和引荐来源网址进行不可靠的猜测,但这两者都很容易被欺骗。

最好的方法是使用某种形式的验证码。这就是他们要做的事情,区分人类和自动化行为。

You could unreliably guess by inspecting user agent and referrer, but both are easily spoofed.

Best way is to use some form of CAPTCHA. That is what they were made to do, differentiate between humans and automated actions.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文