невозможно добавить заголовок / Access-Control-Allow-Crendentials - python приложение-функция - PullRequest
0 голосов
/ 13 июля 2020

Я могу получить свой код сигнализации для подключения + работать без проблем в моей локальной среде, установив хост с веб-адресом

  "Host": {
    "LocalHttpPort": 7070,
    "CORS": "http://localhost:4200",
    "CORSCredentials": true
  }

Затем я развертываю его на портале и go в CORS и добавляю URL-адрес моего веб-сайта с хранилищем blob stati c, размещенного внутри CORS для приложения-функции signalr. Когда я вхожу в свое приложение со значением cors, совпадающим с URL-адресом, я по какой-то причине получаю это

enter image description here

Also according to the docs (нижняя часть страницы). Мне нужно включить Access-Control-Allow-Crendentials

enter image description here

but it seems that a function app running on python doesn't have that option введите описание изображения здесь

Как включить Access-Control-Allow-Crendentials в приложении-функции python?

1 Ответ

1 голос
/ 14 июля 2020

Да, на портале azure нет возможности установить. Не только «Access-Control-Allow-Crendentials», но и многие другие параметры конфигурации не могут быть установлены с помощью портала azure, когда вы основаны на веб-приложении linux.

Для достижения того, что вы хотите, вы можно использовать приведенный ниже cmd в powershell: (Он работает, когда вы основаны на веб-приложении azure. azure функция основана на песочнице веб-приложения, поэтому ниже cmd также работает с функцией.)

az resource update --name web --resource-group yourresoursegroupname --namespace Microsoft.Web --resource-type config --parent sites/yourfunctionname --set properties.cors.supportCredentials=true

Это официальный do c:

https://docs.microsoft.com/en-us/azure/app-service/app-service-web-tutorial-rest-api#enable -cors

Если ваше приложение требует отправки учетных данных, таких как файлы cookie или токены аутентификации, браузеру может потребоваться заголовок ACCESS-CONTROL-ALLOW-CREDENTIALS в ответе. Чтобы включить это в службе приложений, установите для свойства properties.cors.supportCredentials значение true в конфигурации CORS. Это невозможно включить, если в allowedOrigins есть '*'.

Со своей стороны, я могу изменить настройки конфигурации. Дайте мне знать, сможете ли вы изменить конфиг .:)

...