Django & Flutter Как исправить проблему CORS и сломанной трубы?
Я хочу соединить Djnago API с приложением flutter, но у меня много проблем.
Я покажу код как flutter, так и django.
Settings.py
home.dart
Это мой url http://localhost:8000/api/buildingdata/
Когда я использую http:, возникает эта ошибка, хотя я использую опции CORS в Django.
Access to XMLHttpRequest at 'http://127.0.0.1:8000/api/buildingdata/' from origin 'http://localhost:62272' has been blocked by CORS policy: Request header field access-control-allow-origin is not allowed by Access-Control-Allow-Headers in preflight response.
127.0.0.1:8000/api/buildingdata/:1
Failed to load resource: net::ERR_FAILED # Browser
[29/Oct/2021 23:29:43] "OPTIONS /api/buildingdata/ HTTP/1.1" 200 0
[29/Oct/2021 23:29:47,219] - Broken pipe from ('127.0.0.1', 62961)# vscode
Но если я использую https: с этими опциями или без них,
CORS_REPLACE_HTTPS_REFERER = False
HOST_SCHEME = "http://"
SECURE_PROXY_SSL_HEADER = None
SECURE_SSL_REDIRECT = False
SESSION_COOKIE_SECURE = False
CSRF_COOKIE_SECURE = False
SECURE_HSTS_SECONDS = None
SECURE_HSTS_INCLUDE_SUBDOMAINS = False
SECURE_FRAME_DENY = False
Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR # Browser
[29/Oct/2021 23:27:19] code 400, message Bad request version ('\x9a\x9a\x13\x01\x13\x02\x13\x03À+À/À,À0̨̩À\x13À\x14\x00\x9c\x00\x9d\x00/\x005\x01\x00\x01\x93zz\x00\x00\x00\x17\x00\x00ÿ\x01\x00\x01\x00\x00')
[29/Oct/2021 23:27:19] You're accessing the development server over HTTPS, but it only supports HTTP.
[29/Oct/2021 23:27:19] code 400, message Bad request version ('JJ\x13\x01\x13\x02\x13\x03À+À/À,À0̨̩À\x13À\x14\x00\x9c\x00\x9d\x00/\x005\x01\x00\x01\x93ZZ\x00\x00\x00\x17\x00\x00ÿ\x01\x00\x01\x00\x00')
[29/Oct/2021 23:27:19] You're accessing the development server over HTTPS, but it only supports HTTP. # vscode
Возникает ошибка. (С обоими случаями и без них)
Я также пытался изменить порт (8000 > 8080), но ничего не изменилось.
Я не могу использовать белый список, потому что порт всегда меняется при каждом запуске приложения flutter.
Кажется, я перепробовал все, что можно, но все еще не могу исправить код.
Мне кажется, что с Django что-то не так.
Какие проблемы в моем коде?
Или я должен развернуть API для использования?