JavaScript: Cómo abrir un archivo devuelto a través de AJAX

Esto es similar a:¿Cómo abrir un archivo usando JavaScript?

Objetivo: recuperar / abrir un archivo con el doble clic de una imagen
function getFile(filename){
   // setting mime this way is for example only
   var mime = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';

   jQuery.ajax({ url      : 'get_file.pl',
                 data     : {filename:filename}, 
                 success  : function(data){
                               var win = window.open('','title');
                               win.document.open(mime);
                               win.document.write(data);
                               win.document.close();
                            }
               });
}

jQuery('#imgID').dblclick(function(){ 
   getFile('someFile.docx');
});

Estoy haciendo esto sin pensarlo, pero creo que lo anterior funcionaría para archivos de texto, pero no binarios. ¿Hay algún complemento que haga esto correctamente? Lo ideal sería abrir el archivo en el navegador (o aplicación), en lugar de descargarlo, pero dudo que sea un sueño. Si el archivo debe descargarse con el cuadro de diálogo guardar / abrir, está bien.

Editar:

Una información que olvidé mencionar es que me gustaría que esta sea una solicitud POST. Esto es en parte la razón por la que estaba mirando AJAX para empezar. He visto soluciones que han creado formularios / iframes para hacer algo similar, pero estaba buscando un mejor manejador de la información devuelta.

Respuestas a la pregunta(1)

Su respuesta a la pregunta