storage.googleapis.com/BUCKET/OBJECT - это хорошо.
аюсь получить файлы через AJAX из облачного хранилища Google на моем локальном хосте. Я сделал следующее:
Установите CORS для моего ведра через gsutil:
gsutil cors set cors.json gs://my-project
где файл cors.json:
[
{
"origin": [
"*"
],
"responseHeader": ["Origin", "Accept", "X-Requested-With", "Authorization", "Content-Type", "Content-Length", "Accept-Encoding", "X-CSRF-Token"],
"method": [
"GET",
"OPTIONS"
],
"maxAgeSeconds": 1
}
]
Я проверил это сgsutil cors get gs://my-project
Затем для каждого файла я сделал его общедоступным, как через клиентскую библиотеку node.js, когда файл загружен:
bucket.file(object.name).makePublic()
через консоль и через gsutil:
gsutil -m acl set -R -a public-read gs://my-project
Затем в моем запросе ajax я также отправляю заголовки:
$.ajax({
method: "GET",
url: "https://googleapis.com/storage/v1/b/my-project/o?delimiter=audio",
headers: {
'Access-Control-Allow-Origin': '*'
},
crossDomain: true,
}).done((data) => {
console.log(data)
})
и я все еще получаю ошибку cors:
Ответ на запрос предварительной проверки не проходит проверку контроля доступа: в запрашиваемом ресурсе отсутствует заголовок «Access-Control-Allow-Origin». ПроисхождениеHTTP: // локальный: 3000Поэтому не допускается доступ.
Как мне пройти CORS?