У меня есть изображение в хранилище IBM Cloud Object, для его загрузки требуется авторизация. Но это не работает в браузере и iOS (я создаю гибридное приложение), но отлично работает в Android. Отладка Я вижу, что предполетный запрос завершился с ошибкой авторизованного доступа 403. В Andorid нет предварительного запроса, поэтому изображение загружается нормально, но браузер и веб-просмотр iOS делают предварительный запрос.
Мне нужно настроить бэкэнд CORS таким образом, чтобы он разрешал заголовок авторизации и заголовок OPTIONS.
Я нашел это о том, как это сделать, и установил заголовки и методы, но я не могу узнать синтаксис для установки Allow-Credentails.
Это мое текущее тело запроса PUT для установки CORS:
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>DELETE</AllowedMethod>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
<AllowCredentials>true</AllowCredentials>
</CORSRule>
</CORSConfiguration>
Это не работает с MalformedXML. Но если я удалю AllowCredentials, он будет работать нормально.
Итак, первый вопрос: каков синтаксис XML для AllowCredentials.





Заголовок Access-Control-Allow-Credentials не нужен. Ошибка 403 с запросом OPTIONS исчезла, как только я установил CORS следующим образом:
<CORSConfiguration>
<CORSRule>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>DELETE</AllowedMethod>
<AllowedMethod>GET</AllowedMethod>
<AllowedOrigin>*</AllowedOrigin>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>