• You MUST read the Babiato Rules before making your first post otherwise you may get permanent warning points or a permanent Ban.

    Our resources on Babiato Forum are CLEAN and SAFE. So you can use them for development and testing purposes. If your are on Windows and have an antivirus that alerts you about a possible infection: Know it's a false positive because all scripts are double checked by our experts. We advise you to add Babiato to trusted sites/sources or disable your antivirus momentarily while downloading a resource. "Enjoy your presence on Babiato"

Advanced patterns for building APIs and web applications in Go

vinu

Well-known member
Jan 11, 2021
331
673
93

What You’ll Learn in Lets Go Further! Advanced patterns for building APIs and web applications in Go


  1. Structure and organization — How to implement an idiomatic and flexible code structure for your RESTful API projects.
  2. JSON responses — How to send JSON responses from your API, how to format and customize them, and what common gotchas you need to be aware of.
  3. JSON requests — How to parse incoming JSON requests, manage bad requests, and restrict and validate their content.
  4. SQL migrations — How to use SQL migrations to manage changes to your database schema.
  5. Database operations — How to set timeouts on your database queries and optimize the behavior of Go’s sql.DB connection pool.
  6. Beyond CRUD — How to perform advanced actions on your API resources, including fetching related data and partial updates (with optimistic concurrency control).
  7. Filtering, sorting and pagination — How to support filtering, sorting and pagination of data in your API endpoints.
  8. Full-text search — How to use PostgreSQL’s full-text search functionality to perform natural-language searches of your data.
  9. Structured logging — How to develop a custom logger which writes structured, leveled, log entries in JSON format.
  10. Rate-limiting — How to limit requests to your API on a per-client basis.
  11. Managing background tasks — How to safely execute tasks in background goroutines.
  12. Graceful shutdown — How to set up your API to support graceful shutdowns, including waiting for background tasks to complete.
  13. Sending emails — How to send emails from your API and manage email content using Go’s new embedded files functionality.
  14. User activation and password resets — How to build secure workflows for registering users, verifying their email address, and managing password resets.
  15. Authentication — How to authenticate users with both stateful bearers tokens and stateless JWTs (JSON web tokens).
  16. Permission-based authorization — How to implement granular permission-based authorization checks on your API endpoints.
  17. Managing CORS requests — How to control cross-origin requests to your API from front-end JavaScript applications.
  18. Metrics — How to expose application metrics, including memory use, sql.DB connection pool statistics, response status counts and more.
  19. Building and auditing — How to combine Go’s tooling and Makefiles to easily audit your code, build binaries and vendor dependencies.
  20. Versioning — How to leverage Git to apply automatic application versioning when building binaries.
  21. Deployment — How to set up a Linux server on Digital Ocean, automate deployments, and run your API as a background service in production using systemd.
 
man you post alot in education section thanks man very apreciate it

Thanks a lot for taking time and posting kind words ;)

I have been searching for some courses for past few weeks all these awesome course came across hope it will be helpful to community :love:
 
  • Like
Reactions: Gemes
AdBlock Detected

We get it, advertisements are annoying!

However in order to keep our huge array of resources free of charge we need to generate income from ads so to use the site you will need to turn off your adblocker.

If you'd like to have an ad free experience you can become a Babiato Lover by donating as little as $5 per month. Click on the Donate menu tab for more info.

I've Disabled AdBlock