Как установить заголовок Access-Control-Allow-Credentials в облачном хранилище объектов Запрос CORS PUT
У меня есть изображение в хранилище IBM Cloud Object, для получения которого требуется авторизация. Но это не работает в браузере и iOS(я создаю гибридное приложение), но отлично работает в Android. Отладка Я вижу, что предполетный запрос завершился с ошибкой 403 Авторизовано. В Andorid нет предварительного запроса, поэтому изображение загружается нормально, но браузер и веб-браузер iOS делают предварительный запрос.
Мне нужно настроить внутренний CORS таким образом, чтобы он разрешал заголовок авторизации и заголовок OPTIONS.
Я нашел это о том, как это сделать, и настроил Заголовки и Методы, но я не могу найти синтаксис для настройки Разрешить 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.
1 ответ
Заголовок 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>