How to create your Golang APIs from now on with v1.22

  Рет қаралды 13,343

Tiago

Tiago

Күн бұрын

Since Go 1.22 released you can now build your API services with just the net/http package, without the need for any external packages likes gorilla/mux, fiber or chi.
So in this video I’ll show you how I’m going to be building my APIs from now on with go 1.22.
💻 Check the "Complete Backend API in Golang" Course: • Complete Backend API i...
👉 Join the private community to level up as software engineer: selfmadeengineer.com
📢 We're building a Discord community, come and join
/ discord
Hope you liked and thanks for watching!
#golang #api #backend
Time Stamps 👇
00:00:00 Intro
00:01:08 API server
00:03:00 Path values from request
00:03:45 Method based routing
00:05:53 Middleware
00:11:21 Subrouting
Video titles ideas (for the algo):
What is new in Golang 1.22
How to build REST API in Golang 1.22
Create API in Golang 1.22

Пікірлер: 34
@TannerBarcelos
@TannerBarcelos 2 ай бұрын
I love the Echo framework, but for a very basic REST API or for learning Go and the stdlib, these new 1.22 updates for http, and Go itself make learning really good. Awesome video. As a TS dev, I am so used to reaching for libraries, but Go is so simple and elegant, you almost don't need to ever reach outside the stdlib 90% of the time. I can see why folks will reach for a router beyond the native one, though, because it definitely does abstract a few things away like creating a new mux for another router, stripping prefixes and defining the method in the route path. Enjoy your content brother, keep it up!
@TiagoTaquelim
@TiagoTaquelim 2 ай бұрын
Yee I feel the same! Thanks bro!
@MattRobinsonDev
@MattRobinsonDev 2 ай бұрын
Another great video Tiago!
@prashlovessamosa
@prashlovessamosa 2 ай бұрын
Thanks for sharing buddy.
@Justanotherlurker69
@Justanotherlurker69 2 ай бұрын
Nice and clean. Thanks
@goncalofaraujo
@goncalofaraujo Ай бұрын
Very nice and useful tips. Thank you.
@liyang-ib6lk
@liyang-ib6lk Ай бұрын
The tutorial explanation is very clear and easy to learn! The style is also good!
@gabriell7472
@gabriell7472 2 ай бұрын
Obrigado amigo! Very helpful :)
@herminio.machava
@herminio.machava 2 ай бұрын
Obrigado Tiago por mais um video incrível! Abraço de Moçambique!
@TiagoTaquelim
@TiagoTaquelim 2 ай бұрын
Obrigado eu!
@saurontrollbrawl
@saurontrollbrawl 2 ай бұрын
Tnx man!
@afsdab
@afsdab Ай бұрын
Great Video , I'm learning Go and I'm trying to use stdlib before trying any external library, your videos are helping me with this.
@gregorydaggett7444
@gregorydaggett7444 Ай бұрын
hey me too! happy I found this channel
@langqin
@langqin Ай бұрын
very helpful!
@marcelofeitoza3918
@marcelofeitoza3918 2 ай бұрын
Amazing content, helping a lot
@marcelofeitoza3918
@marcelofeitoza3918 2 ай бұрын
Obrigado pelo conteúdo, direto do Brasil! 🇧🇷
@TiagoTaquelim
@TiagoTaquelim 2 ай бұрын
@@marcelofeitoza3918 Muito obrigado Marcelo!
@solidev7702
@solidev7702 2 ай бұрын
Yes man!!!
@fadygamilmahrousmasoud5863
@fadygamilmahrousmasoud5863 2 ай бұрын
Thank you
@de-is
@de-is 2 ай бұрын
Again, thanks for the great work. very motivational, and helps me to move forward. I hope in your next video you are going to explain the "Functional Options" pattern you have used for "Middleware Chaining". Coz in this video you have just quietly typed it. :)))
@roshanpaudel6352
@roshanpaudel6352 11 күн бұрын
Hi boss, I love your go content. I usually watch you and you use vim/nvim in your vscode with ease. I am a fulltime nvim user and I struggle to navigate around vscode even though using nvim extension. I love the way you navigate around. I looked at the description I couldn't find your github. Would you be able to share your vscode configs. I would love to implement it. Thank you for your awesome content.
@TiagoTaquelim
@TiagoTaquelim 11 күн бұрын
Thank you! I actually don't use vim. It looks like it because I made it so, but I'm just using the VSCode keybinds, I havent got the need to use VIM because I'm gotten pretty efficient with them. Here are the dotfiles: github.com/sikozonpc/dotfiles Not sure if they're 100% updated tho.
@roshanpaudel6352
@roshanpaudel6352 10 күн бұрын
@@TiagoTaquelim Thank you so much 😃
@ferasmnsha5583
@ferasmnsha5583 2 ай бұрын
can you please do a tutorial about using redis as a cache write-through in golang
@PhanorColl
@PhanorColl 2 ай бұрын
for sub-routing, did you change the handler in the server to V1, or left the router, I tried it, if I leave Handler: router, it does not take effect , if I change it fo Handler: v1, it takes effect, how would you handle multiple subrouting?
@TiagoTaquelim
@TiagoTaquelim 2 ай бұрын
Try to change the endpoint handlers to the v1 the mux if that is not working. To handle multiple routing I would do the same as I did but then you need to do what I mention above. You could create an "adminRouter" and all of the admin handlers needed to be from that router.
@hsemix
@hsemix 2 ай бұрын
@@TiagoTaquelim Do you mean v1.HandleFunc("GET /users/{userID}", handler) coz that didn't work either
@liyang-ib6lk
@liyang-ib6lk Ай бұрын
I agree with you there.I ran the code for this video in my golan, but it does not match the results shown in the video. I am using the go version 1.22.1.The problem lies in the sub routing set by v1.I set the port to 8081.When I use curl -H "Authorization: Bearer token" localhost:8081/api/v1/users/23232 . The returned result is 404 page not found.What is the reason for this?
@liyang-ib6lk
@liyang-ib6lk Ай бұрын
@@TiagoTaquelim I have found the answer.This way of writing will have the same effect as in the video middleWareChain := MiddlewareChain(RequestLogMiddleware, RequestAuthMiddleware) childRouter := http.NewServeMux() childRouter.Handle("/api/v1/", http.StripPrefix("/api/v1", router)) server := http.Server{ Addr: s.addr, Handler: middleWareChain(childRouter), }
@Rundik
@Rundik 2 ай бұрын
If server fails to start it will still print the message that it has started
@user-pc3hd6sw7g
@user-pc3hd6sw7g 2 ай бұрын
thanks for your content, but now I need to hardcode the method type? who designs this wtf haha
@madmaxdev
@madmaxdev 2 ай бұрын
What theme is this?
@TiagoTaquelim
@TiagoTaquelim 2 ай бұрын
Gruvbox.
Authenticating your APIs in Golang (HTMX project)
32:22
Tiago
Рет қаралды 4,7 М.
The standard library now has all you need for advanced routing in Go.
13:52
ПАРАЗИТОВ МНОГО, НО ОН ОДИН!❤❤❤
01:00
Chapitosiki
Рет қаралды 1,7 МЛН
[柴犬ASMR]曼玉Manyu&小白Bai 毛发护理Spa asmr
01:00
是曼玉不是鳗鱼
Рет қаралды 49 МЛН
Chips evolution !! 😔😔
00:23
Tibo InShape
Рет қаралды 42 МЛН
Super sport🤯
00:15
Lexa_Merin
Рет қаралды 20 МЛН
Everything You'll Need to Know About Git with ThePrimeagen | Preview
14:43
THIS is the BEST Way to Write HTTP Services in Golang
13:53
Function Iterators might just change the way we write loops in Go
11:35
The BEST Tool to Structure Golang Projects
7:58
Melkey
Рет қаралды 11 М.
My Initial Impresson Of Go
12:39
TheVimeagen
Рет қаралды 63 М.
A Beautiful Way To Deal With ERRORS in Golang HTTP Handlers
8:42
Master Go Programming With These Concurrency Patterns (in 40 minutes)
46:15
This Is The BEST Way To Structure Your GO Projects
11:08
Melkey
Рет қаралды 59 М.
ПАРАЗИТОВ МНОГО, НО ОН ОДИН!❤❤❤
01:00
Chapitosiki
Рет қаралды 1,7 МЛН