Bootstrap

Utilizar Azure como gestor de archivos y pintarlos en una vista

Microsoft Azure

Un cliente nos solicito un feature que requeria subir archivos al blob storage de azure y pintar los mismos en el sitio web dependiendo de la estructura de carpetas definida.

La primera via y facil que vimos es que genera una url del container del blob storage pero nos devuelve un feo y horrible xml, podemos parsearlo y resolver con una url custom del blob storage y listo, pero el problema es... Si los criterios cambian si la url cambia si las cosas feas de xml cambian ya que en ese caso no es una api estable conversiones y no es algo que manejemos en el dia a dia en el front como si lo son los json y las api rest por lo que analizamos las funcionalidades de azure y conseguimos un servicio adicional de azure llamado cognitive search este servicio se encarga de realizar busquedas inteligentes en la nube de azure y en cualquier indice que se le defina, y nos genera una api rest que es facilmente consumible desde el front inclusive con posibilidad de OCR para leer los archivos que se suban y obtener datos o realizar búsquedas especificas dentro de los archivos, por lo que se propuso utilizar este servicio y hacer lo que el cliente deseo que era consumir este blob storage desde esta api rest con un token de seguridad que nos permitira trackear y hacer analitica del consumo de esta informacion asi como tambien agregar features a futuro como un file storage u otro servicio de azure a la misma query, lo unico que vimos un poco extraxo es que la url del archivo para su descarga se devuelve en base64 pero no es nada que js no nos pueda resolver con un simple atob