Вы можете попытаться отключить CORS внутри fetch
предложения:
window.downloadAsset = function () {
const url = 'https://git.myCompany.com/api/v3/repos/myOrg/myRepo/releases/assets/123';
const options = {
headers: {
Authorization: 'token abcd1234',
Accept: 'application/octet-stream'
},
method: 'get',
mode: 'no-cors'
};
fetch(url, options)
.then(response => response.blob())
.then(data => {
// Save blob data as file
});
};
Также вы можете попробовать принять CORS внутри выборки:
window.downloadAsset = function () {
const url = 'https://git.myCompany.com/api/v3/repos/myOrg/myRepo/releases/assets/123';
const options = {
headers: {
Authorization: 'token abcd1234',
Accept: 'application/octet-stream'
'Access-Control-Allow-Origin':'*'
},
method: 'get',
mode: 'cors'
};
fetch(url, options)
.then(response => response.blob())
.then(data => {
// Save blob data as file
});
};
Другой способ: Вы можете попробоватьдобавьте этот PHP-код в начало вашего HTML-файла для принятия перекрестного происхождения:
<?php header('Access-Control-Allow-Origin: *'); ?>
В любом случае, лучший вариант - это принять CORS в конце
Два возможных решения для серверной части:
Если вы используете файл node.js: файл node.js: response.writeHead (200,{'Content-Type': contentType, 'Access-Control-Allow-Origin': '* *})
Если вы используете Apache : в настройках(как первый вариант), добавьте эту директиву: Набор заголовков Access-Control-Allow-Origin *.