2008-11-07 17 views

Respuesta

17

Si está utilizando Firefox, puede lograr esto con GreaseMonkey. (https://addons.mozilla.org/en-US/firefox/addon/748)

GM es un marco para aplicar scripts a algunas o todas las páginas que visita. Tengo scripts GM que deshabilitan las descargas de google-analytics (porque disminuyen la velocidad) y que desactivan google-click-tracking en las páginas de resultados de google (porque me molesta que lo estén haciendo).

Aquí es mi google clic en Disable script:

// ==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. 

Al hacer algo similar con XMLHttpRequest (y otras funciones) se puede desactivar de manera eficaz. Por supuesto, puede romper completamente la página haciendo esto, pero ya lo sabía.

+0

instrucción instilación Manual: http://wiki.greasespot.net/Greasemonkey_Manual:Installing_Scripts – user956584

+1

La extensión equivalente para Chrome es [Tampermonkey] (https://chrome.google.com/webstore/detail/ tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo) –

-1

No. AJAX es solo un uso particular de javascript.

Si pudieras bloquear la función en particular, llama al servidor para que puedas hacerlo, pero probablemente debas editar tu navegador.

Supongo que quiere hacer esto desde el extremo del cliente ... ¿Puede enumerar algunos objetivos más específicos? ¿Cuál es el resultado esperado?

4

AJAX es simplemente el uso de la función XMLHttpRequest en Javascript. Dependiendo de su navegador, puede bloquear el acceso a esta función a través de su configuración de seguridad. Al menos con Firefox, puede deshabilitarlo mediante una extensión personalizada.

0

No más de lo que puede deshabilitar cualquier otra función - puede haber algunos kludges o hacks que puedan interferir o romper javascript, pero esperamos no encontrar tales vulnerabilidades.

Voy a tomar una puñalada salvaje en la oscuridad y supongo que estás tratando de detener la entrada de algún tipo de usuario no confiable de Ajax? Su mejor opción en ese caso sería evitar especificar en exceso sus parámetros de búsqueda mencionando Ajax, en lugar de eso, buscar 'desinfectar javascript', 'usuario javascript seguro' ... ese tipo de cosas.

6

Puede reemplazar la herramienta del navegador para hacer AJAX (objeto XMLHttpRequest) con el suyo que no hace nada.

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

Asegúrese de que su código de reemplazo se ejecute antes de cualquier llamada AJAX.

Esto funcionará para cualquier navegador que implemente AJAX a través del objeto XMLHttpRequest pero no funcionará para IE. Para IE, puede que tenga que sobrecargar la función CreateObject() si es posible ...

0

Además de la sugerencia de Firefox, puede hacerlo en IE como un efecto secundario de deshabilitar ActiveX. También en IE7 + tienes que desactivar la opción 'Native XMLHttpRequest'.

2

Este es un comentario finales sobre una cuestión que ya ha sido contestada, pero en beneficio de las personas que vienen de Google:

Con la extensión Tab Permissions para Firefox puede desactivar JavaScript para una pestaña en particular (en contraposición globalmente para todas las pestañas) con un menú contextual con el botón derecho.Configuré el elemento de menú "Permisos" para alternar entre "Redirigir" y "JavaScript", así que si tropecé con una página que tiene refrescamientos molestos y AJAX, puedo cerrar rápida y fácilmente la actividad del ancho de banda de la pestaña sin afectar el JavaScript en mis otras pestañas abiertas.

5

En IE, esto se puede hacer con: Herramientas -> Opciones de Internet -> Pestaña Avanzada -> Desplácese hasta Seguridad -> Desmarque 'Habilitar compatibilidad nativa con XMLHTTP'.

http://msdn.microsoft.com/en-us/library/ms537505%28v=vs.85%29.aspx

+0

Esto parece no funcionar en mi navegador IE, la versión 11.0.9600.18314. Todavía puedo ver solicitudes de AJAX enviadas en las herramientas de desarrollo de IE. ¿Alguna idea? – Yuci

Cuestiones relacionadas