我使用python Flask創建了REST GET API,它的代碼如下
app = Flask(__name__)
現在在前端方面,Flutter的代碼如下
child: ElevatedButton(
孩子。const Text('Download')。
onPressed: () async {
var header = {
'Access-Control-Allow-Origin': '*',
"接受": "application/json"var url = Uri.parse(
'http://192.168.2.237:8080/youtube?url=www.google.com')。)
print('URL is : ${url}')。
var response = await http.get(url, headers: header)。
print('Response status: ${response.statusCode}')。)
print('Response body: ${response.body}')。)
},
),
我在Chrome瀏覽器上運行了這個程式,但我總是得到如下的錯誤
。 URL is : http://192.168.2.237:8080/youtube? url www.google.com
:49831/#/: 1 Access to XMLHttpRequest at 'http://192. 168.2.237:8080/youtube?urlwww.google.com'
from origin 'http://localhost:49831' 已被CORS策略阻止。回應to preflight
請求不't通過access控制檢查。沒有'Access-Control-Allow-Origin'頭是在請求的資源上存在。
browser_client.dart:74 GET http://192.168.2.237:8080/youtube?url=www.google.com net::ERR_FAILED
對不起,我不知道這是Python還是Flutter的問題,我已經把這兩個代碼合并到這里了,謝謝
。uj5u.com熱心網友回復:
第一種方案
1- 進入flutterincache,洗掉一個名為:flutter_tools.*的檔案
。2- 進入flutterpackagesflutter_toolslibsrcweb并打開檔案chrome.dart.
。3- 找到'-disable-extensions'/p>
4- 添加'--disable-web-security'/p>
第二個選項
在python代碼中添加頭資訊 header('Access-Control-Allow-Origin', '*')
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/332601.html
標籤:
