Google Translate перестал работать в Chrome

Google Translate перестал работать в Chrome, но все еще работает в Firefox. Код ниже, и до этого он работал давно:

<script>
    function googleSectionalElementInit() {
    new google.translate.SectionalElement({
        sectionalNodeClassName: 'can-translate',
        controlNodeClassName: 'translation-control',
        background: '#ffffcc'
    }, 'google_sectional_element');
    }
    var url = top.location.href,
        pos = url.search(/\/\w\w(\W|$)/),
        lang = url.substring(pos+1,pos+3),
    (function() {
        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = false;
        ga.src = 'https://translate.google.com/translate_a/element.js?cb=googleSectionalElementInit&ug=section&hl='+lang;
        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
    })();
</script>

На данный момент вот ошибка:

Блокировка чтения из разных источников (CORB) заблокировала ответ из разных источников https://translate.googleapis.com/translate_a/l?client=te&alpha=true&hl=en&cb=_callbacks____0jtqeel7c с типом MIME application / json. Подробнее см. https://www.chromestatus.com/feature/5629709824032768.

Если перейти по предложенной ссылке, вот предложение:

Убедитесь, что эти ресурсы обслуживаются с правильным заголовком ответа Content-Type из списка ниже, а также заголовком ответа X-Content-Type-Options: nosniff.

Также есть сообщение на https://translate.google.com/intl/en/about/website/

Мы больше не предоставляем новый доступ к Переводчику веб-сайтов Google Translate. Это изменение не влияет на существующее использование Переводчика веб-сайтов.

Это влияет только на Chrome, приведенный выше код - это только Google , и я не знаю, где и как добавить "X-Content-Type-Options: nosniff".

UPD: есть два необходимых заголовка.

Гугл сам себя заблокировал и кто-нибудь знает, как это исправить?

UPD1: Ошибка Google translate стала появляться и в Firefox 66.0.1 тоже. это

Ресурс с сайта «https://translate.googleapis.com/translate_a/l?client=te&alpha=true&hl=en&cb=_callbacks____0jttrta1j »был заблокирован из-за несоответствия типа MIME (« application / json ») (X-Content-Type-Options: nosniff).

Похоже, какой-то глюк службы перевода, после обновления одной страницы он работает, после другого - сервер возвращает неверные данные, json вместо javascript или что-то в этом роде


person Yuri    schedule 27.03.2019    source источник
comment
мы наблюдаем ту же проблему. при удаче?   -  person Darrow7456    schedule 27.03.2019
comment
Теперь он восстановился без каких-либо действий с моей стороны, версия Chrome осталась прежней   -  person Yuri    schedule 27.03.2019
comment
проблема все еще видна, наверняка что-то изменилось? Какая у вас версия Chrome?   -  person Darrow7456    schedule 27.03.2019
comment
На одних машинах такая же проблема, на других нет.   -  person Tom    schedule 27.03.2019
comment
он был в версии 72.X, поэтому попытался выполнить обновление до 73.0.3683.86, но все еще видел сообщение CORB. Кажется, блокирует фактическое использование translate   -  person Darrow7456    schedule 27.03.2019
comment
Chrome - это последняя актуальная версия 73.0.3683.86. Теперь кажется, что сообщение об ошибке исчезло   -  person Yuri    schedule 27.03.2019
comment
какое-нибудь решение этой проблемы? на моих сайтах он все еще исчезает в последней версии Chrome 73.0.3683.86   -  person Drunken M    schedule 28.03.2019
comment
как Олег сказал ниже, если (для меня, любой) файл cookie NID присутствует через домен google, то предупреждение CORBS появляется при использовании переводчика веб-сайтов Google Translate через код от Google с использованием метода: googleTranslateElementInit (). Google больше не предоставляет новый доступ к этому коду, но текущие пользователи все еще могут его использовать, ссылка: translate.google.com/ intl / en / about / website. Если я захожу в настройки Chrome и удаляю файл cookie NID, перезагружаю страницу, предупреждение CORBS исчезнет. Файл cookie NID возвращается после нескольких перезагрузок из-за возврата файла cookie. На последней v.73.0.3683.86   -  person Darrow7456    schedule 29.03.2019


Ответы (3)


Пожалуйста, откройте сообщение об ошибке через https://crbug.com/new и постарайтесь предоставить как можно больше подробностей:

  • Проблема сработала в Chrome 72 и перестала работать в Chrome 73?

  • Есть ли репро-страница, показывающая проблему? Каково ожидаемое наблюдаемое поведение VS?

  • Возникает ли проблема без каких-либо расширений Chrome?

  • Использует ли неработающая страница AppCache?

person Łukasz Anforowicz    schedule 28.03.2019
comment
Я не знаю, на какой из версий Chrome это началось, и похоже, что это не ошибка браузеров, а сбои службы Google. - person Yuri; 29.03.2019
comment
Я отправил сообщение об ошибке: bugs.chromium.org/p/chromium / issues / detail? id = 947466 - person Darrow7456; 29.03.2019

На этом этапе, если вы вручную удалите файл cookie с именем «NID» для хоста .translate.googleapis.com, вы сможете обработать страницу (ошибка CORB исчезнет)

Кстати, повторные вызовы страниц тоже иногда убирают эту ошибку. Но решение проблемы так же странно, как и его возникновение.

person Oleg    schedule 28.03.2019
comment
Я не думаю, что можно удалить cookie с другого сайта. Мой сайт показывает 2 файла cookie NID: один с translate.googleapis.com и один с google.com. однако открытие сайта в окне инкогнито не дает предупреждения CORB и не показывает файлы cookie NID ... - person Darrow7456; 28.03.2019
comment
Вы точно не можете сделать это из сценария. У него также есть флаг htmlOnly, поэтому вы даже не можете его прочитать (любые операции только как владелец браузера на вкладке «Приложение»). - person Oleg; 28.03.2019
comment
Я установил код, чтобы показать это. Кажется, выдает сообщение CORB даже в режиме инкогнито после использования раскрывающегося списка языковых инструментов и перезагрузки страницы. продолжай, и ты получишь сообщение. s.codepen.io/paul/debug/ZZzEpQ/mWAoNxPzExxr - person Darrow7456; 29.03.2019

Я столкнулся с этой проблемой на нескольких сайтах, сначала она началась в Chrome на моем Pixel 2.

Виджет иногда появляется при первой загрузке, если требуется не перезагрузка, даже не жесткая перезагрузка. Я предполагаю, что Google пытается постепенно отказаться от виджета.

Виджет по-прежнему работает без проблем во всех других браузерах.

person Joseph Burkey    schedule 29.03.2019