gpt4 book ai didi

api - 如何仅使用 dart 代码解决 flutter web api cors 错误?

转载 作者:行者123 更新时间:2023-12-04 11:04:45 24 4
gpt4 key购买 nike

似乎 CORS 错误是网络领域的众所周知的问题。但是我有史以来第一次尝试了 flutter web,我遇到了严重的错误。
下面的代码在 iOS 设备上运行时在应用程序版本中运行良好,但是当我在 Chrome 上使用 beta channel 的网络调试测试相同的代码时,它遇到了 CORS 错误。
其他 stackoverflow 答案解释了如何使用其项目的服务器端文件解决 CORS 问题。但我完全不知道什么是服务器问题以及如何处理他们的答案。来自 Chrome 控制台的错误消息如下
[从源 'http://localhost:52700' 访问 XMLHttpRequest at 'https://kapi.kakao.com/v1/payment/ready' 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin” header 。 ]
所以,我想要做的是仅使用 DART 代码解决上面的“Access-Control-Allow-Origin header ”问题!下面的代码是我尝试仅使用 main.dart 解决这些问题的代码。

onPressed: () async {
var res =
await http.post('https://kapi.kakao.com/v1/payment/ready', encoding: Encoding.getByName('utf8'), headers: {
'Authorization': 'KakaoAK $_ADMIN_KEY',
HttpHeaders.authorizationHeader: 'KakaoAK $_ADMIN_KEY',
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "POST, GET, OPTIONS, PUT, DELETE, HEAD",
}, body: {
'cid': 'TC0ONETIME',
'partner_order_id': 'partner_order_id',
'partner_user_id': 'partner_user_id',
'item_name': 'cool_beer',
'quantity': '1',
'total_amount': '22222',
'vat_amount': '2222',
'tax_free_amount': '0',
'approval_url': '$_URL/kakaopayment',
'fail_url': '$_URL/kakaopayment',
'cancel_url': '$_URL/kakaopayment'
});
Map<String, dynamic> result = json.decode(res.body);
print(result);
},
即使我实际上有标题 "Access-Control-Allow-Origin": "*"大多数其他答案推荐,Chrome 控制台打印相同的错误消息。奇怪的是,相同的代码在 mobileApp 版本中发出了成功的请求。所以我认为这只是 flutter WEB VERSION 的问题。
希望有人能弄清楚并建议仅使用 dart 代码来解决我的 main.dart 中的问题!!感谢您阅读 [:

最佳答案

1- 转到 flutter\bin\cache 并删除名为:flutter_tools.stamp 的文件
2- 转到 flutter\packages\flutter_tools\lib\src\web 并打开文件 chrome.dart。
3- 找到“--disable-extensions”
4- 添加'--disable-web-security'

关于api - 如何仅使用 dart 代码解决 flutter web api cors 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65630743/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com