Latch SDK para Go ¡NO OFICIAL!

Latch

*Latch*

Hace tiempo que empecé a leer y juguetear con el lenguaje de programación Go, pero por falta de tiempo nunca llegué a programar nada con él, simplemente seguí el tour que tienen online.

Ultimamente, quizás por la popularidad que Go está ganando (éste sí que creo que le puede toser a Java en un futuro cercano), tenía ganas de realmente familiarizarme con él, así que la semana pasada me puse manos a la obra y me voví a hacer el tour y leer algo de documentación. Lo siguiente era escribir código. Pensando que implementar, me dio por mirar Latch de ElevenPath a ver si tenían un SDK para Go, y parece que no, así que a eso me puse y le dediqué la tarde (y la noche) del domingo a crear una librería para Go.

Todo el código está en Github. Para poder usarlo necesitas Go instalado. Yo he usado la version 1.8.3 sobre Ubuntu Linux, aunque también lo he probado en MacOS con la version 1.8 y el código parece funcionar. Como refencia he usado la documentación y el SDK oficial para Python y Java. La version de la API que uso es la 1.6, aunque en la documentación hace referencia a la 1.3 y los SDKs usand la 1.0 y 1.1. No sé que diferencia hay entre cada version o si 1.6 es estable o no.

Hay un par de cosas pendientes de implementar:

  1. Las cabeceras X-11paths- no veo que se usen en ningún lado, las he añadido a la firma de la petición, pero no a las cabeceras del request.
  2. Convertir la respuesta del servidor a JSON. Ahora mismo devuelve un cadena de texto con la respuesta del mismo.

Cómo bien dice el título, esta es una SDK NO OFICIAL, y yo no tengo ningún tipo de afiliación o relación con ElevenPath, excepto la amistad con algunos conocidos :). Y cómo decía al principio, este es un proyecto de fin de semana con el objetivo de aprender Go. Si alguien lo usa y encuentra algún error o tiene alguna sugerencia, soy todo oidos ;)

Aunque el uso del SDK (si estás familiarizado con Latch) es trivial, escribiré una nueva entrada con algunos ejemplos y quizás incluso haga un vídeo donde podamos ver la integración del SDK con un servicio REST y el uso de la aplicación móvil.

Happy coding!