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 для использования?

Вернуться на верх