Cypress.io - можно ли делать запросы CORS в режиме без головы - PullRequest
0 голосов
/ 10 апреля 2020

Испытания проходят во главе Chrome. Они терпят неудачу в безголовых Chrome и электронах (во главе электронов тоже выходит из строя). Я устанавливаю флаг веб-безопасности на false для каждого браузера в файле Cypress / Plugins. Насколько я могу судить по журналам, опций перед полетом даже не было. Безголовый браузер просто возвращает ошибку 403 CORS. Бэкэнд-сервер даже не поражен. Мне интересно, есть ли еще один механизм, блокирующий все запросы CORS без головы.

1 Ответ

1 голос
/ 10 апреля 2020

Нашел решение для безголового Chrome в этой SO записи

До сих пор нет представления о безголовом электроне.

Для других пользователей Cypress: Cypress/plugins/index.js

module.exports = (on, config) => {
on('before:browser:launch', (browser = {}, launchOptions) => {
    console.log('..browser ', launchOptions);
    if (browser.name === 'chrome') {
        launchOptions.args.push('--disable-site-isolation-trials');
        launchOptions.args.push('--reduce-security-for-testing');
        launchOptions.args.push('--out-of-blink-cors');

        return launchOptions;
    }

    if (browser.name === 'electron') {
        launchOptions.preferences.webPreferences.webSecurity = false;

        return launchOptions;
    }
});
...