Mejoras importantes en nuestro SDK de Go
En Transloadit somos grandes fans del lenguaje de programación Go. No solo por su simplicidad, sino también por su capacidad para impulsar sistemas eficientes. De hecho, uno de nuestros componentes principales, encargado de gestionar los clústeres de máquinas en AWS, está escrito en Go. Y lo mismo ocurre con tusd, la implementación de servidor de referencia del protocolo tus, nuestro protocolo abierto para subidas de archivos reanudables. Por eso nos entusiasmó lanzar por primera vez el SDK oficial de Go de Transloadit (English) allá por 2014.
Sin embargo, ahora que el SDK se acerca a su tercer cumpleaños, decidimos sentarnos a darle un lavado de cara. Y aquí estamos hoy, orgullosos de compartir el resultado contigo anunciando el lanzamiento de la v1.0 del SDK de Go. La versión 1.0 incluye una interfaz de API completamente revisada, documentación completa y soporte para el paquete context de Go. Esto último resulta útil para definir tiempos de espera de las solicitudes y así evitar bloqueos.
Vamos directo al código y déjame guiarte por un breve ejemplo:
-
En primer lugar, asegúrate de tener instalado Go 1.7 o superior. Si no es así, descárgalo. Después, podemos instalar el paquete simplemente ejecutando el siguiente comando:
go get -u gopkg.in/transloadit/go-sdk.v1Eso es todo lo que necesitas hacer para instalarlo. Para completar los pasos restantes, podemos pasar directamente al código.
-
En segundo lugar, creamos una nueva instancia de Client ampliando la configuración predeterminada con tus credenciales de API:
options := transloadit.DefaultConfig options.AuthKey = "AUTH_KEY" options.AuthSecret = "AUTH_SECRET" client := transloadit.NewClient(options) -
A continuación, creamos la estructura Assembly, agregamos un archivo para subir y definimos las instrucciones sobre cómo procesarlo:
assembly := transloadit.NewAssembly() assembly.AddFile("image", "./path/to/your/file") assembly.AddStep("resize", map[string]interface{}{ "robot": "/image/resize", "width": 75, "height": 75, "resize_strategy": "pad", "background": "#000000", }) -
Después de especificar nuestras instrucciones, es momento de transmitirlas a Transloadit y comenzar a ejecutar las operaciones necesarias:
info, err := client.StartAssembly(context.Background(), assembly) -
Por último, debemos esperar hasta que la ejecución haya terminado y nuestros resultados estén disponibles:
info, err = client.WaitForAssembly(context.Background(), info) fmt.Printf("You can view the result at: %s\n", info.Results["resize"][0].SSLURL)
¡Y eso es todo! ¡Acabas de ejecutar con éxito tu primera Assembly con nuestro nuevo SDK de Go! Si quieres saber aún más, echa un vistazo a estos recursos adicionales:
- Ejemplos: https://github.com/transloadit/go-sdk/tree/master/examples
- Código fuente: https://github.com/transloadit/go-sdk
- Documentación: https://godoc.org/gopkg.in/transloadit/go-sdk.v1
P. D. Actualmente estamos dedicando más esfuerzos a mejorar nuestros SDK para ofrecerte la mejor experiencia posible. ¡Así que mantente atento a futuros anuncios como este!
