VK Cloud logo

Веб-қосымша арқылы файлдарды бакетке жүктеу кезіндегі CORS қатесі

Веб-қосымша VK Object Storage бакетіне файл жүктеуге тырысады, бірақ сұрау браузер тарапынан бұғатталады. Әзірлеуші консолінде CORS ережелеріне қатысты қате көрсетіледі, мысалы, Access to XMLHttpRequest at '...' from origin '...' has been blocked by CORS policy.

Мәселе веб-браузердің Same-Origin Policy (SOP) қауіпсіздік механизміне байланысты туындайды. Бұл механизм бір дереккөздегі (origins) скриптке басқа дереккөзге сұрау жіберуге тыйым салады, егер бұл айқын түрде рұқсат етілмесе. Мұндай өзара әрекеттесуге рұқсат беру үшін VK Object Storage арнайы HTTP тақырыптарын қайтаруы керек.

Шешімі

CORS ережелерін тексеріп, түзетіңіз:

  1. VK Cloud жеке кабинетіне өтіңіз.

  2. Қажетті бакет орналасқан жобаны таңдаңыз.

  3. Объектілік қоймаБакеттер бөліміне өтіңіз.

  4. Қажетті бакет үшін Меню түймесін басып, Баптаулар тармағын таңдаңыз.

  5. CORS қойындысына өтіңіз.

  6. CORS ережесін қосыңыз немесе өңдеңіз:

    • AllowedOrigins: веб-қосымшаңыздың доменін көрсетіңіз. * таңбасын қолдану кез келген доменнен қол жеткізуге рұқсат береді.
    • AllowedMethods: веб-қосымшаңыз жүктеу үшін қолданатын HTTP әдісін көрсетіңіз, мысалы, PUT немесе POST.
    • AllowedHeaders: веб-қосымшадан келетін сұраулар үшін рұқсат етілген тақырыптарды көрсетіңіз, мысалы, Content-Type, Authorization, x-amz-acl. * таңбасын қолдану кез келген тақырыптары бар сұрауларға рұқсат береді.