¿Cómo almacenar y compartir archivos en Azure?

En este post veremos como almacenar archivos dentro de nuestro servidor de Azure y poder manejarlos o compartirlos a través de nuestros proyectos. Esto es una funcionalidad que nos proporciona el proprio Azure y es super útil para guardar archivos pequeños tales como cookies.

Primeros Pasos

Para empezar necesitaremos tener una cuenta en Azure Portal. Este paso es muy sencillo y ya depende de cada uno y de la opción que quiera usar.

https://azure.microsoft.com/es-es/features/azure-portal/

Aquí os dejo un enlace para que podáis acceder directamente. Yo en mi caso tengo una cuenta de Student que viene con algunos créditos pero esto es irrelevante ya que este servicio es gratuito y no nos cobraran.

Creación de un Storage

Para esta funcionalidad necesitaremos crear un storage. Esto es un contenedor donde a su vez podremos crear mas contenedores o subir directamente archivos como imágenes o pdfs.

A la hora de crear un storage solamente necesitamos proporcionarle un nombre único, un grupo de recursos, que se puede crear desde la pestaña de créate new y la región en la que nosotros trabajaremos. Una vez introducidos estos datos pulsaremos en review and create y lanzaremos el storage.

Lo que acabamos de crear es el contenedor general de storage y aquí es donde podremos insertar otros contenedores y archivos.

En nuestro caso lo que necesitaremos será un contenedor share files.

Pulsamos y crearemos uno nuevo.

Aquí solo necesitaremos darlo un nombre y dejarlo en el tier optimizado.

Y una vez acabado esto ya tendremos creado nuestro storage para archivos. Pero no cerréis las pestañas porque lo necesitaremos mas tarde.

Aplicacion

Ahora toca ponernos a programar, de modo que crearemos un proyecto en Visual estudio de Tipo Modelo-Vista-Controlador.

Lo primero

Lo primero que tendremos que hacer será instalar el Nuggets que nos permitirá manejar nuestros archivos.

Service

Una vez tengamos nuestro service necesitaremos crear una carpeta Services, y una clase ServiceStorageFile.

Dentro de nuestra clase de Service inyectaremos un ShareDirectoryClient.

En el nombre de la keys, introduciremos el nombre que le hayamos puesto al sharefiles, que creamos en los primeros pasos. Y ahora podremos seguir con los métodos para las diferentes acciones que dispondremos para nuestros usuarios.

GetFiles()

Este es el método que se ocupara de recuperar nuestros ficheros. Es un método que crea una lista de ficheros y los pide al servidor, los va almacenando con un bucle y los devuelve.

ReadFiles()

Un método que se ocupara de coger un fichero y extraer su contenido para poder sacarlo por pantalla.

UploadFile()

Otro método para poder subir archivos a nuestro servidor. Aquí hay que destacar que para hacer un update, solo basta con subir el archivo con el mismo nombre cambiado y el proprio Azure se ocupara de sobrescribirlo.

DeleteFile()

Y para acabar un método delete. Estos son los métodos esenciales a la hora de manejar archivos.

Controlador

Dentro del controlador haremos las llamadas necesarios al servicio, que inyectaremos al principio e iremos sacando los datos según mas nos convenga.

Este es mi controlador, en el he hechos un display básico para poder manejar todo de manera sencilla. De todas formas podréis ver el funcionamiento en su totalidad en el video de demostración que he publicado.

Startup

Ya como últimos pasos, necesitaremos traer la cadena de conexión para poder conectarnos a nuestro servicio de storage. Esta la podemos encontrar en el portal de Azure en el apartado de Keys.

Dentro de este apartado haremos la claves visibles y copiaremos la primera connectionString.

Esta clave la llevaremos hasta nuestro proyecto, el la carpeta de appseting crearemos un apartado de connection string y allí añadiremos la clave.

Una vez echo todo esto solo necesitaremos inyectar las dependencias del service y de nuestros tools en la carpeta de startup.

Y una vez realizado esto podemos probar nuestro proyecto y jugar con los archivos.

Funcionamiento

Todo esto estará mejor explicado en el video, pero como podréis ver podemos subir archivos.

Podemos ver los archivos que tenemos subidos y leerlos o borrarlos.

Conclusión

Como conclusión puedo sacar que esta funcionalidad es muy útil, sobre todo para guardar archivos pequeños como cookies o configuración adicional. Se le pueden dar 1001 usos yes muy fácil de implantar, así que cualquiera puede aprender a usarlo en 5 minutos e intentar sacarle todo el potencial.

Información

Autor/a: Alexandru Preutesei Emilian

Curso: Desarrollo Web Full Stack, Multicloud y Multiplataforma

Centro: Tajamar

GitHub: https://github.com/AlexandruTajamar21/FileStorageAzure

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.