ventana solo sirve saber que para modal funcion evento ejecutar data cuando con como cierra cerrar boton bootstrap javascript jquery ajax jsonp

javascript - solo - Use JSONP para cargar una página html



evento al cerrar modal jquery (6)

Estoy intentando cargar una página externa usando JSONP , pero la página es una página HTML , solo quiero capturar el contenido usando ajax.

EDITAR: La razón por la que estoy haciendo esto es porque quiero pasar toda la información del usuario, por ejemplo: encabezados, ip, agente, al cargar la página en lugar de mis servidores.

¿Es esto factible? En este momento, puedo obtener la página, pero jsonp intenta analizar el archivo json, devolviendo un error: Uncaught SyntaxError: Unexpected token <

Código de muestra:

$.post(''http://example.com'',function(data){ $(''.results'').html(data); },''jsonp'');

Configuré un jsfiddle para que la gente lo pruebe: http://jsfiddle.net/8A63A/1/


En primer lugar, llame a la URL de AJAX manualmente y vea que el HTML resultante tiene sentido.

En segundo lugar, debe cerrar su DIV en su ejemplo de violín.


He hecho lo que quería, pero en mi caso tengo el control del código del lado del servidor que devuelve el HTML. Entonces, lo que hice fue envolver el código HTML en una de las propiedades Json del objeto devuelto y usarlo en el lado del cliente, algo así como:

callback({"page": "<html>...</html>"})

El error de sintaxis que enfrenta es porque la biblioteca que está utilizando espera json pero la respuesta es HTML, solo eso.


No creo que esto sea posible. JSONP requiere que la respuesta se represente correctamente.

Si quieres otra solución, ¿qué tal cargar la url en un iframe e intentar hablar a través del iframe? No estoy 100% seguro de que funcione, pero vale la pena intentarlo.


Si realmente quieres emplear al cliente para enganchar un archivo HTML, sugiero usar flyJSONP, que usa YQL ... o usa jankyPOST que usa algunas técnicas dulces:

jankyPOST crea un iframe oculto y lo rellena con un formulario (iframe [0] .contentWindow.document.body.form.name).

Luego usa la API de webMessaging HTML5 (¡vea los navegadores heredados!) Para publicar en el otro iframe y establece los vals de los elementos de formulario de iframe a lo que usted especificó.

Envía formulario al servidor remoto ... hecho.

O simplemente podría usar PHP curl, analizarlo, repetirlo, etc.

IDK, ¿para qué te sirve exactamente, pero espero que esto ayude?

TAMBIÉN ... Estoy bastante seguro de que puede JSONP cualquier cosa que sea un resultado del código del servidor. Hice esto con ClientLogin simplemente JSONPing su página keyGen y con éxito la consolaLogge el texto a pesar de que era etiquetas b / w. Tuve algunos otros errores sobre eso, pero el punto es que eliminé esa salida.

Actualmente, estoy tratando de hacer lo que tú eres, así que publicaré de nuevo si es exitoso.


Tengo tres palabras para ti: Política de Same Origin

A menos que la URL remota realmente sea compatible con las solicitudes JSONP correctas, no podrá hacer lo que está tratando de hacer. Y eso es algo bueno

Editar: por supuesto, puede tratar de proxy de la solicitud a través de su servidor ...


http://en.wikipedia.org/wiki/JSONP#Script_element_injection

Hacer una llamada JSONP (en otras palabras, para emplear este patrón de uso) requiere un elemento script. Por lo tanto, para cada nueva solicitud de JSONP, el navegador debe agregar (o reutilizar) un nuevo elemento; en otras palabras, inyectar el elemento en el DOM HTML, con el valor deseado para el atributo "src". Este elemento se evalúa, se recupera la URL src y se evalúa la respuesta JSON.

Ahora mira tu error:

Untaught SyntaxError: Token inesperado <

< es el primer carácter de cualquier etiqueta html, probablemente este es el comienzo de <DOCTYPE , en este caso, que es, por supuesto , JavaScript no válido.

Y NO , no puede usar JSONP para recuperar datos html.