Estoy tratando de crear mi primer sitio con una configuración AJAX usando Perl en un servidor de alojamiento web gratuito. El anfitrión tiene mucho que desear. Hay módulos Perl instalados en el servidor pero CGI::Ajax no está instalado. Soy nuevo en Perl. ¿Hay alguna manera razonable de codificar una configuración AJAX simple sin usar el módulo que mencioné? ¿Podría tener algo que ver con XMLHttpRequest ?
Actualización: Sí, estoy leyendo el código y los comentarios del módulo CGI::Ajax. ¿Supongo que no podría simplemente extraer algo de allí y ponerlo en el script que de otro modo llamaría al módulo? Pero primero tendría que entender todo el módulo aterrador...
Actualización: estoy buscando una forma de incluir CGI::Ajax cargando el módulo en el mismo directorio que el script que lo "usará" y modificando la ruta @INC , o algo así...
En todos los años que he estado escribiendo aplicaciones web, he escrito más que mi parte justa de llamadas Ajax y nunca he usado CGI::Ajax. De hecho, hasta ahora nunca había oído hablar de él. Ahora he hojeado la documentación y realmente no puedo ver qué ventajas le brinda.
Hay dos partes de una interacción Ajax. La parte del cliente se ejecuta en el navegador y, por lo tanto, casi siempre está escrita en Javascript. En estos días, jQuery lo hace bastante trivial. No puedo ver cómo un módulo de Perl ayudaría aquí.
La parte del servidor se ejecuta en un servidor web. Todo lo que necesita es una aplicación que reciba una solicitud HTTP y envíe una respuesta HTTP. Una aplicación CGI escrita en Perl es una forma obvia de escribir eso, pero en estos días es mucho más probable que use algo basado en PSGI. Probablemente querrá que su aplicación devuelva datos como JSON y configure el encabezado de tipo de contenido de manera adecuada y quizás CGI::Ajax ayude con eso, pero no es exactamente oneroso hacerlo en cualquier otro marco web.
Entonces, para resumir:
Actualización: Entonces, en este caso, no necesita instalar el módulo adicional. Pero, en general, su vida de desarrollo de Perl será mucho más fácil si puede instalar módulos fácilmente cuando los desee. Por lo tanto, recomendaría buscar una solución de alojamiento que le permita hacer eso.
No hay nada especial en las solicitudes de AJAX. Son como cualquier otra solicitud web. El siguiente es un controlador de solicitud web de muestra (incluido AJAX):
#!/usr/bin/perl use strict; use warnings; use CGI qw( ); my $cgi = CGI->new(); print $cgi->header('text/plain'); print "Hello, World!\n";