Submit Search
Upload
Building APIs using Go
•
3 likes
•
1,017 views
Elton Minetto
Follow
How i use Go to develop APIs
Read less
Read more
Technology
Report
Share
Report
Share
1 of 16
Download now
Download to read offline
Recommended
technicalresume
technicalresume
Alex Moaveni
Take the next step with git
Take the next step with git
Karin Taliga
Grunt
Grunt
bigsilverbob
sbt: the incredible machine
sbt: the incredible machine
Vasil Remeniuk
Git single branch
Git single branch
Carl Brown
Git: Why And How to
Git: Why And How to
lanhuonga3
Introduction to GIT
Introduction to GIT
Piotr Benetkiewicz
Development with Git and Gerrit - Eclipse DemoCamp Stuttgart - 2010-11-23
Development with Git and Gerrit - Eclipse DemoCamp Stuttgart - 2010-11-23
msohn
Recommended
technicalresume
technicalresume
Alex Moaveni
Take the next step with git
Take the next step with git
Karin Taliga
Grunt
Grunt
bigsilverbob
sbt: the incredible machine
sbt: the incredible machine
Vasil Remeniuk
Git single branch
Git single branch
Carl Brown
Git: Why And How to
Git: Why And How to
lanhuonga3
Introduction to GIT
Introduction to GIT
Piotr Benetkiewicz
Development with Git and Gerrit - Eclipse DemoCamp Stuttgart - 2010-11-23
Development with Git and Gerrit - Eclipse DemoCamp Stuttgart - 2010-11-23
msohn
How does Ansible's agentless architecture work?
How does Ansible's agentless architecture work?
jtyr
Git - Workshop Disruptiva
Git - Workshop Disruptiva
Bruno Almeida
Mobile applications in a new way with React Native
Mobile applications in a new way with React Native
Eugene Zharkov
SCM Gitlab Advanced
SCM Gitlab Advanced
Aman Patial
Git basics
Git basics
Padmavathi Tiwari
Jump into React-Native (Class 6)
Jump into React-Native (Class 6)
Waqqas Jabbar
Index 2018 node.js what's next
Index 2018 node.js what's next
Michael Dawson
Git & Github
Git & Github
Aman Lalpuria
Atomic Designは「マルチ」で真価を発揮する
Atomic Designは「マルチ」で真価を発揮する
Yukiya Nakagawa
Intro android
Intro android
Daniyar Mukhanov
Angular.js for beginners
Angular.js for beginners
Basia Madej
Advanced Git
Advanced Git
Sergiu-Ioan Ungur
Git Merge, Resets and Branches
Git Merge, Resets and Branches
Victor Pudelski
Intro to Gradle + How to get up to speed
Intro to Gradle + How to get up to speed
Reid Baker
OSCONF - April 2021 - Run GitHub Actions Locally with nektos/act and Docker
OSCONF - April 2021 - Run GitHub Actions Locally with nektos/act and Docker
Gaurav Gahlot
Git work flow
Git work flow
Kevin Chiu
Organizational control OKRs visão geral
Organizational control OKRs visão geral
Martino Bagini
Building an Agile Culture with OKR
Building an Agile Culture with OKR
Felipe Castro
[Webinar] Como a RockContent faz Marketing de Conteúdo
[Webinar] Como a RockContent faz Marketing de Conteúdo
Rock Content
Como desenvolver e atingir a missão da sua empresa utilizando a metodologia OKR?
Como desenvolver e atingir a missão da sua empresa utilizando a metodologia OKR?
Tiago de Faveri Giusti
OKRs para Alinhamento e Direcionamento com Foco em Resultados
OKRs para Alinhamento e Direcionamento com Foco em Resultados
Fabio Lacerda
OKR - Objective and Key Results
OKR - Objective and Key Results
Rafaella Cavalca
More Related Content
What's hot
How does Ansible's agentless architecture work?
How does Ansible's agentless architecture work?
jtyr
Git - Workshop Disruptiva
Git - Workshop Disruptiva
Bruno Almeida
Mobile applications in a new way with React Native
Mobile applications in a new way with React Native
Eugene Zharkov
SCM Gitlab Advanced
SCM Gitlab Advanced
Aman Patial
Git basics
Git basics
Padmavathi Tiwari
Jump into React-Native (Class 6)
Jump into React-Native (Class 6)
Waqqas Jabbar
Index 2018 node.js what's next
Index 2018 node.js what's next
Michael Dawson
Git & Github
Git & Github
Aman Lalpuria
Atomic Designは「マルチ」で真価を発揮する
Atomic Designは「マルチ」で真価を発揮する
Yukiya Nakagawa
Intro android
Intro android
Daniyar Mukhanov
Angular.js for beginners
Angular.js for beginners
Basia Madej
Advanced Git
Advanced Git
Sergiu-Ioan Ungur
Git Merge, Resets and Branches
Git Merge, Resets and Branches
Victor Pudelski
Intro to Gradle + How to get up to speed
Intro to Gradle + How to get up to speed
Reid Baker
OSCONF - April 2021 - Run GitHub Actions Locally with nektos/act and Docker
OSCONF - April 2021 - Run GitHub Actions Locally with nektos/act and Docker
Gaurav Gahlot
Git work flow
Git work flow
Kevin Chiu
What's hot
(16)
How does Ansible's agentless architecture work?
How does Ansible's agentless architecture work?
Git - Workshop Disruptiva
Git - Workshop Disruptiva
Mobile applications in a new way with React Native
Mobile applications in a new way with React Native
SCM Gitlab Advanced
SCM Gitlab Advanced
Git basics
Git basics
Jump into React-Native (Class 6)
Jump into React-Native (Class 6)
Index 2018 node.js what's next
Index 2018 node.js what's next
Git & Github
Git & Github
Atomic Designは「マルチ」で真価を発揮する
Atomic Designは「マルチ」で真価を発揮する
Intro android
Intro android
Angular.js for beginners
Angular.js for beginners
Advanced Git
Advanced Git
Git Merge, Resets and Branches
Git Merge, Resets and Branches
Intro to Gradle + How to get up to speed
Intro to Gradle + How to get up to speed
OSCONF - April 2021 - Run GitHub Actions Locally with nektos/act and Docker
OSCONF - April 2021 - Run GitHub Actions Locally with nektos/act and Docker
Git work flow
Git work flow
Viewers also liked
Organizational control OKRs visão geral
Organizational control OKRs visão geral
Martino Bagini
Building an Agile Culture with OKR
Building an Agile Culture with OKR
Felipe Castro
[Webinar] Como a RockContent faz Marketing de Conteúdo
[Webinar] Como a RockContent faz Marketing de Conteúdo
Rock Content
Como desenvolver e atingir a missão da sua empresa utilizando a metodologia OKR?
Como desenvolver e atingir a missão da sua empresa utilizando a metodologia OKR?
Tiago de Faveri Giusti
OKRs para Alinhamento e Direcionamento com Foco em Resultados
OKRs para Alinhamento e Direcionamento com Foco em Resultados
Fabio Lacerda
OKR - Objective and Key Results
OKR - Objective and Key Results
Rafaella Cavalca
Gestao Por Objectivos 3.0 (OKR)
Gestao Por Objectivos 3.0 (OKR)
GOOD Intelligence
Slides Scrum Gathering Rio 2016 (PT-BR)
Slides Scrum Gathering Rio 2016 (PT-BR)
Felipe Castro
Agile Brazil 2017 - Uma abordagem ágil aplicada em um PMO Corporativo
Agile Brazil 2017 - Uma abordagem ágil aplicada em um PMO Corporativo
Guga Ferreira
Reveal.js
Reveal.js
Hakim El Hattab
O que é OKR (Objectives and Key Results)?
O que é OKR (Objectives and Key Results)?
Felipe Castro
OKRs - Objective Key Results - Visão Geral
OKRs - Objective Key Results - Visão Geral
Astella Investimentos
OKR - Objectives and Key Results (Portuguese)
OKR - Objectives and Key Results (Portuguese)
Vinicius Siqueira
OKR - Objetivos e Resultados Chave
OKR - Objetivos e Resultados Chave
Carlos Freitas
Sobre OKR - Objectives and Key Results
Sobre OKR - Objectives and Key Results
Mário Pravato Junior
Introduction to Objectives and Key Results. The Basics & FAQ of OKRs.
Introduction to Objectives and Key Results. The Basics & FAQ of OKRs.
Weekdone.com
The Executioner's Tale
The Executioner's Tale
Christina Wodtke
Guide to OKR (Objectives & Key Results)
Guide to OKR (Objectives & Key Results)
Mustansir Husain
reveal.js 3.0.0
reveal.js 3.0.0
Hakim El Hattab
Viewers also liked
(19)
Organizational control OKRs visão geral
Organizational control OKRs visão geral
Building an Agile Culture with OKR
Building an Agile Culture with OKR
[Webinar] Como a RockContent faz Marketing de Conteúdo
[Webinar] Como a RockContent faz Marketing de Conteúdo
Como desenvolver e atingir a missão da sua empresa utilizando a metodologia OKR?
Como desenvolver e atingir a missão da sua empresa utilizando a metodologia OKR?
OKRs para Alinhamento e Direcionamento com Foco em Resultados
OKRs para Alinhamento e Direcionamento com Foco em Resultados
OKR - Objective and Key Results
OKR - Objective and Key Results
Gestao Por Objectivos 3.0 (OKR)
Gestao Por Objectivos 3.0 (OKR)
Slides Scrum Gathering Rio 2016 (PT-BR)
Slides Scrum Gathering Rio 2016 (PT-BR)
Agile Brazil 2017 - Uma abordagem ágil aplicada em um PMO Corporativo
Agile Brazil 2017 - Uma abordagem ágil aplicada em um PMO Corporativo
Reveal.js
Reveal.js
O que é OKR (Objectives and Key Results)?
O que é OKR (Objectives and Key Results)?
OKRs - Objective Key Results - Visão Geral
OKRs - Objective Key Results - Visão Geral
OKR - Objectives and Key Results (Portuguese)
OKR - Objectives and Key Results (Portuguese)
OKR - Objetivos e Resultados Chave
OKR - Objetivos e Resultados Chave
Sobre OKR - Objectives and Key Results
Sobre OKR - Objectives and Key Results
Introduction to Objectives and Key Results. The Basics & FAQ of OKRs.
Introduction to Objectives and Key Results. The Basics & FAQ of OKRs.
The Executioner's Tale
The Executioner's Tale
Guide to OKR (Objectives & Key Results)
Guide to OKR (Objectives & Key Results)
reveal.js 3.0.0
reveal.js 3.0.0
Similar to Building APIs using Go
Front End Development for Back End Developers - UberConf 2017
Front End Development for Back End Developers - UberConf 2017
Matt Raible
Git'in on Windows
Git'in on Windows
Stacy Vicknair
Griffon for the Enterprise
Griffon for the Enterprise
James Williams
Git for Windows
Git for Windows
Ovidiu Dimulescu
EdTechJoker Spring 2020 - Lecture 2 - Git
EdTechJoker Spring 2020 - Lecture 2 - Git
Bryan Ollendyke
Go Web Development
Go Web Development
Cheng-Yi Yu
Working in Team using Git in Unity
Working in Team using Git in Unity
Rifauddin Tsalitsy
Behat Workshop at WeLovePHP
Behat Workshop at WeLovePHP
Marcos Quesada
Code for Startup MVP (Ruby on Rails) Session 1
Code for Startup MVP (Ruby on Rails) Session 1
Henry S
How to Create a Service in Choreo
How to Create a Service in Choreo
WSO2
Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017
Matt Raible
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
David Amend
Behave manners for ui testing pycon2019
Behave manners for ui testing pycon2019
Panos Christeas
Javascript, the GNOME way (JSConf EU 2011)
Javascript, the GNOME way (JSConf EU 2011)
Igalia
Introduction to Eclipse Che / EclipseCon 2014
Introduction to Eclipse Che / EclipseCon 2014
Florent BENOIT
GDG Cloud Taipei meetup #50 - Build go kit microservices at kubernetes with ...
GDG Cloud Taipei meetup #50 - Build go kit microservices at kubernetes with ...
KAI CHU CHUNG
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Mark Proctor
GAE_20100112
GAE_20100112
Kosuke Matsuda
GDG Addis - An Introduction to Django and App Engine
GDG Addis - An Introduction to Django and App Engine
Yared Ayalew
Grooscript greach
Grooscript greach
Jorge Franco Leza
Similar to Building APIs using Go
(20)
Front End Development for Back End Developers - UberConf 2017
Front End Development for Back End Developers - UberConf 2017
Git'in on Windows
Git'in on Windows
Griffon for the Enterprise
Griffon for the Enterprise
Git for Windows
Git for Windows
EdTechJoker Spring 2020 - Lecture 2 - Git
EdTechJoker Spring 2020 - Lecture 2 - Git
Go Web Development
Go Web Development
Working in Team using Git in Unity
Working in Team using Git in Unity
Behat Workshop at WeLovePHP
Behat Workshop at WeLovePHP
Code for Startup MVP (Ruby on Rails) Session 1
Code for Startup MVP (Ruby on Rails) Session 1
How to Create a Service in Choreo
How to Create a Service in Choreo
Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
Behave manners for ui testing pycon2019
Behave manners for ui testing pycon2019
Javascript, the GNOME way (JSConf EU 2011)
Javascript, the GNOME way (JSConf EU 2011)
Introduction to Eclipse Che / EclipseCon 2014
Introduction to Eclipse Che / EclipseCon 2014
GDG Cloud Taipei meetup #50 - Build go kit microservices at kubernetes with ...
GDG Cloud Taipei meetup #50 - Build go kit microservices at kubernetes with ...
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
GAE_20100112
GAE_20100112
GDG Addis - An Introduction to Django and App Engine
GDG Addis - An Introduction to Django and App Engine
Grooscript greach
Grooscript greach
More from Elton Minetto
Go e Microserviços - Nascidos um para o outro
Go e Microserviços - Nascidos um para o outro
Elton Minetto
Object Calisthenics em Go
Object Calisthenics em Go
Elton Minetto
Programar != desenvolver software (v2)
Programar != desenvolver software (v2)
Elton Minetto
Gerenciando uma startup no Github Projects
Gerenciando uma startup no Github Projects
Elton Minetto
Clean Architecture
Clean Architecture
Elton Minetto
Serverless em Go
Serverless em Go
Elton Minetto
JAMstack
JAMstack
Elton Minetto
Clean architecture em Go - v2
Clean architecture em Go - v2
Elton Minetto
Programar != desenvolver software
Programar != desenvolver software
Elton Minetto
Clean Architecture em PHP
Clean Architecture em PHP
Elton Minetto
Clean Architecture in Golang
Clean Architecture in Golang
Elton Minetto
A jornada do desenvolvedor
A jornada do desenvolvedor
Elton Minetto
Product and Technology
Product and Technology
Elton Minetto
Code:Nation Tech Stack
Code:Nation Tech Stack
Elton Minetto
Modernizando projetos legados usando APIs
Modernizando projetos legados usando APIs
Elton Minetto
12 factor in the PHP world
12 factor in the PHP world
Elton Minetto
Start you
Start you
Elton Minetto
O case da Compufácil e AWS
O case da Compufácil e AWS
Elton Minetto
Introdução a Go
Introdução a Go
Elton Minetto
Como extrair métricas do Trello
Como extrair métricas do Trello
Elton Minetto
More from Elton Minetto
(20)
Go e Microserviços - Nascidos um para o outro
Go e Microserviços - Nascidos um para o outro
Object Calisthenics em Go
Object Calisthenics em Go
Programar != desenvolver software (v2)
Programar != desenvolver software (v2)
Gerenciando uma startup no Github Projects
Gerenciando uma startup no Github Projects
Clean Architecture
Clean Architecture
Serverless em Go
Serverless em Go
JAMstack
JAMstack
Clean architecture em Go - v2
Clean architecture em Go - v2
Programar != desenvolver software
Programar != desenvolver software
Clean Architecture em PHP
Clean Architecture em PHP
Clean Architecture in Golang
Clean Architecture in Golang
A jornada do desenvolvedor
A jornada do desenvolvedor
Product and Technology
Product and Technology
Code:Nation Tech Stack
Code:Nation Tech Stack
Modernizando projetos legados usando APIs
Modernizando projetos legados usando APIs
12 factor in the PHP world
12 factor in the PHP world
Start you
Start you
O case da Compufácil e AWS
O case da Compufácil e AWS
Introdução a Go
Introdução a Go
Como extrair métricas do Trello
Como extrair métricas do Trello
Recently uploaded
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
NavinnSomaal
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
Scott Keck-Warren
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Lonnie McRorey
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Dubai Multi Commodity Centre
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Sergiu Bodiu
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
comworks
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Precisely
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
RankYa
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
null - The Open Security Community
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
Rizwan Syed
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
charlottematthew16
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
Kalema Edgar
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
Pixlogix Infotech
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
DianaGray10
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Slibray Presentation
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Alan Dix
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
2toLead Limited
Recently uploaded
(20)
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
Building APIs using Go
1.
Building APIs using Go Elton Minetto @eminetto http://eltonminetto.net
2.
This is my
approach based on other projects...
3.
No frameworks!
4.
Stdlib + small
pieces
5.
• github.com/asaskevich/govalidator • github.com/codegangsta/negroni •
github.com/go-sql-driver/mysql • github.com/gorilla/mux • github.com/joho/godotenv • gopkg.in/gorp.v1 • github.com/rubenv/sql-migrate
6.
Project structure
7.
pkg user/ user.go (structs and
service interface) user_test.go (tests) mysql.go (implementation of the service interface) middleware/ Cors.go -> add cors headers isAuthenticated.go -> request authentication
8.
api handler/ user.go (define routes,
handler implementation) main.go (act as a dependency injection container)
9.
cmd
10.
bin
11.
config
12.
doc
13.
migrations
14.
vendor (e other files)
15.
Links https://github.com/eminetto/go-web-skel Desenvolvendo APIs em
Go usando Middlewares Definindo APIs com o API Blueprint Gerenciando dependências em Golang
16.
Contato http://twitter.com/eminetto http://eltonminetto.net http://asemanago.com.br (+550 assinantes) eminetto@gmail.com
Download now