Googe Storage ArgumentException при настройке конфигурации CORS
Следуя документам Google, при использовании консоли хранения GoogleCloud:
mysef@myproject:~$ cat cors-json-file.json
[
{
"origin": ["*"],
"method": ["GET"],
"maxAgeSeconds": 3600
}
]
тогда я получаю следующую ошибку:
myself@myproject:~$ gsutil cors set cors-json-file.json gs://mybucket
Setting CORS on gs://mybucket/...
ArgumentException: JSON CORS data could not be loaded from: [
{
"origin": ["*"],
"method": ["GET"],
"maxAgeSeconds": 3600
}
]
та же ошибка, когда я удаляю "method", "maxAgeSeconds" или добавляю "responseHeader".
3 ответа
После стольких попыток я закончил с изменением файла json:
$ cat cors-json-file.json
[{
"origin": ["*"],
"method": ["GET"],
"maxAgeSeconds": 3600
}]
и... это сработало! Обратите внимание, что пример из документации Google - мой первый случай (с [{на 2 строки)
У меня была такая же проблема, и она была вызвана типом используемых цитат. Открыв json-файл в текстовом редакторе и изменив кавычки на стандартные, исправили проблему.
Я получил ту же ошибку, когда попытался установить параметры CORS с запятой в конце ",", как показано ниже:
[
{
"origin": ["http://localhost:8000"],
"method": ["GET"],
"responseHeader": ["Content-Type"],
"maxAgeSeconds": 3600,
} // ↑ Trailing comma
]
Итак, я удалил завершающую запятую «,», как показано ниже, после чего я смог успешно установить настройки CORS без ошибок:
[
{
"origin": ["http://localhost:8000"],
"method": ["GET"],
"responseHeader": ["Content-Type"],
"maxAgeSeconds": 3600
} // ↑ No trailing comma
]