You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何授权Flutter应用访问Cloudflare防护网站并绕过人机验证?

关于Flutter应用Cloudflare 403验证问题及Turnstile Dart包使用方案

一、能否绕过Cloudflare人机验证?

直接"绕过"Cloudflare人机验证属于违反服务条款的行为,且Cloudflare的防护机制持续更新,所谓的绕过方法不仅不稳定,还可能导致你的应用被目标网站永久封禁,强烈不建议尝试。

二、合法授权请求的可行方式

  • 申请官方API Token:这是最稳妥的解决方案。联系目标网站的管理员或开发者,说明你的应用用途,申请专门的API访问凭证(如API Key/Token)。使用这类凭证发起请求时,目标网站会直接授权你的应用,无需通过人机验证。
  • 规范请求头配置:确保Flutter请求头模拟正常浏览器的配置,避免被Cloudflare判定为非人类请求。示例代码:
final response = await http.get(
  Uri.parse('目标网站API地址'),
  headers: {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36',
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'Referer': '目标网站主页地址',
  },
);

三、Cloudflare Turnstile Dart包应用方案

Cloudflare Turnstile是替代传统验证码的友好验证方案,若目标网站要求通过该验证才能访问,可按以下步骤在Flutter应用中集成:

  1. 添加依赖:在pubspec.yaml中引入Turnstile的Dart包:
dependencies:
  cloudflare_turnstile: ^最新版本号
  1. 集成验证组件:在需要验证的页面初始化Turnstile组件,传入从Cloudflare控制台获取的siteKey:
import 'package:cloudflare_turnstile/cloudflare_turnstile.dart';

class TurnstilePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: CloudflareTurnstile(
          siteKey: '你的Turnstile Site Key',
          onSuccess: (token) {
            // 验证成功后,携带token发起请求
            _fetchData(token);
          },
          onError: (error) {
            print('验证失败: $error');
          },
        ),
      ),
    );
  }

  void _fetchData(String token) async {
    final response = await http.get(
      Uri.parse('目标网站API地址'),
      headers: {
        'CF-Turnstile-Response': token,
        // 其他必要请求头
      },
    );
    // 处理响应数据
  }
}
  1. 后端验证(若需):如果目标网站要求后端校验Turnstile token,需在你的后端服务中调用Cloudflare验证API,传入secretKey和前端获取的token,验证通过后再转发请求到目标网站。

注意:使用Turnstile需先在Cloudflare控制台注册域名,获取siteKey和secretKey,且需符合Cloudflare的使用规范。

内容的提问来源于stack exchange,提问作者waseem ashraf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 16:12:44