Действительно ли возможно отключить Ajax, не отключая JavaScript полностью?

Убедитесь, что вы создали все необходимые сопоставления для встреч и ресурсов, как описано в разделе справки Сопоставления .

11
задан Willem D'Haeseleer 7 January 2013 в 07:49
поделиться

7 ответов

При использовании Firefox Вы могли бы выполнить это с GreaseMonkey. (https://addons.mozilla.org/en-US/firefox/addon/748)

GM является платформой для применения сценариев некоторым или всем страницам, которые Вы посещаете. У меня есть сценарии GM, которые отключают загрузки аналитики Google (потому что они замедляют вещи), и которые отключают отслеживание щелчка Google на страницах результатов Google (потому что оно беспокоит меня, что они делают это).

Вот мой щелчок Google, отключают сценарий:

// ==UserScript==
// @name           Google Clk
// @namespace      googleclk
// @description    Disable Google click tracking
// @include        http://*google.com/*
// ==/UserScript==
// Override google's clk() function, which reports all clicks back to google
unsafeWindow.clk = function(url) {} // { alert(url); } // I use this to test.

Путем выполнения чего-то похожего с XMLHttpRequest (и другие функции) можно эффективно отключить их. Конечно, можно полностью повредить страницу путем выполнения этого, но Вы уже знали это.

17
ответ дан 3 December 2019 в 02:21
поделиться

Ajax является просто использованием функции XMLHttpRequest в JavaScript. В зависимости от Вашего браузера Вы можете блокировать вниз доступ к этой функции через Ваши настройки безопасности. По крайней мере, с Firefox, Вы могли отключить его любой посредством использования пользовательского Расширения.

4
ответ дан 3 December 2019 в 02:21
поделиться

Можно заменить инструмент браузера для создания Ajax (объект XMLHttpRequest) с собственным, которое ничего не делает.

XMLHttpRequest = function(){}
XMLHttpRequest.prototype = {
    open: function(){},
    send: function(){}
}

Убедитесь, что Ваш заменяющий код выполняется перед любым вызовом Ajax.

Это будет работать на любой браузер, которые реализуют Ajax через объект XMLHttpRequest, но не будут работать на IE. Для IE Вам, вероятно, придется перегрузить CreateObject () функция, если это возможно...

7
ответ дан 3 December 2019 в 02:21
поделиться

Не больше, чем можно отключить любую другую функцию - могут быть некоторые клуджи или взломы, которые будут найдены, который мог вмешаться в или повредить JavaScript, но мы будем надеяться не найти такие уязвимости.

Я возьму дикий удар в темноте и предположу, что Вы пытаетесь остановить Ajax в недоверяемом вводе данных пользователем некоторого вида? Ваш лучший выбор в этом случае состоял бы в том, чтобы не чрезмерно определять Ваши поисковые параметры путем упоминания Ajax, скорее поиск 'санируют JavaScript', 'пользователь JavaScript, безопасный'... такая вещь.

0
ответ дан 3 December 2019 в 02:21
поделиться

Дополнительно к предложению Firefox, можно сделать это в IE как побочный эффект отключения ActiveX. Также на IE7 + необходимо отключить 'Native XMLHttpRequest' опцию.

0
ответ дан 3 December 2019 в 02:21
поделиться

Нет. Ajax является просто конкретным использованием JavaScript.

Если бы Вы могли бы заблокировать конкретный вызов функции назад к серверу, Вы смогли делать это, но необходимо было бы, вероятно, отредактировать браузер.

Я предполагаю, что Вы хотите сделать это от клиентского конца... Можно ли перечислить некоторые более определенные цели? Каков ожидаемый результат?

-2
ответ дан 3 December 2019 в 02:21
поделиться

Это поздний комментарий к вопрос, на который уже был дан ответ, но для людей, приходящих из Google:

С помощью расширения Tab Permissions для Firefox вы можете отключить JavaScript для определенной вкладки (в отличие от глобально для всех вкладок ) с помощью контекстного меню, вызываемого правой кнопкой мыши. Я настроил пункт меню «Разрешения», чтобы переключать «Перенаправление» и «JavaScript», поэтому, если я наткнусь на страницу с раздражающими обновлениями и AJAX, я могу быстро и легко отключить пропускную способность некорректной вкладки, не затрагивая JavaScript. на других моих открытых вкладках.

2
ответ дан 3 December 2019 в 02:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: