首页 > 解决方案 > Flutter Web:CORS 策略已阻止在 ** 从源 ** 访问 XMLHttpRequest

问题描述

我正在开发一个应用程序,我在其中使用import 'package:http/http.dart' as http;包发出“http”请求。当我在其中使用该请求时,此请求运行良好,AndroidiOSFultter Web我遇到CORS Policy问题时。

代码

Future<Details> verification(String id) async {
  final http.Response response = await http
      .post(
        'https://secure.iccrc-crcic.ca/search/do/lang/en',
        headers: <String, String>{
          'Content-Type': 'application/x-www-form-urlencoded',
          'Access-Control-Allow-Origin': '*',
          'Access-Control-Allow-Methods': 'POST,GET,DELETE,PUT,OPTIONS',
          'Accept': '*/*'
        },
        body:
            "form_fields=%20lang%3Den%26search_last_name%3D%26search_first_name%3D%26search_iccrc_number%3D$id%26search_membership_status%3D1%26search_company_name%3D%26search_agent%3D%26search_country%3D%26search_province%3D%26search_postal_code%3D%26search_city%3D%26search_street%3D&query=%20&letter=%20&start=%200",
      )
      .timeout(Duration(minutes: 1));

  if (response.statusCode == 200) {
    return verificationEmail(response.body);
  } else {
    throw Exception('Failed to create album.');
  }
}

错误

Access to XMLHttpRequest at 'https://secure.iccrc-crcic.ca/search/do/lang/en' 
from origin 'https://immigration-101.web.app' has been blocked by CORS policy: 
Response to preflight request doesn't pass access control check: 
No 'Access-Control-Allow-Origin' header is present on the requested resource.

我对发出请求的端点没有任何控制权,因此无法在端点中添加允许标头解决方案。

请帮帮我。

标签: flutterdartcorsflutter-web

解决方案


推荐阅读