Как установить заголовок 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>
Другие вопросы по тегам