Skip to content

mathiasb/greenlight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Follow along for the b ook Let's Go Further by Alex Edwards

2.2. A Basic HTTP Server 2.3. API Endpoints and RESTful Routing 3. Sending JSON Responses 3.1. Fixed-Format JSON 3.2. JSON Encoding 3.3. Encoding Structs 3.4. Formatting and Enveloping Responses 3.5. Advanced JSON Customization 3.6. Sending Error Messages 4. Parsing JSON Requests 4.1. JSON Decoding 4.2. Managing Bad Requests 4.3. Restricting Inputs 4.4. Custom JSON Decoding 4.5. Validating JSON Input 5. Database Setup and Configuration 5.1. Setting up PostgreSQL 5.2. Connecting to PostgreSQL 5.3. Configuring the Database Connection Pool 6. SQL Migrations 6.1. An Overview of SQL Migrations 6.2. Working with SQL Migrations 7. CRUD Operations 7.1. Setting up the Movie Model 7.2. Creating a New Movie 7.3. Fetching a Movie 7.4. Updating a Movie 7.5. Deleting a Movie 8. Advanced CRUD Operations 8.1. Handling Partial Updates 8.2. Optimistic Concurrency Control 8.3. Managing SQL Query Timeouts 9. Filtering, Sorting, and Pagination 9.1. Parsing Query String Parameters 9.2. Validating Query String Parameters 9.3. Listing Data 9.4. Filtering Lists 9.5. Full-Text Search 9.6. Sorting Lists 9.7. Paginating Lists 9.8. Returning Pagination Metadata 10. Rate Limiting 10.1. Global Rate Limiting 10.2. IP-based Rate Limiting 10.3. Configuring the Rate Limiters 11. Graceful Shutdown 11.1. Sending Shutdown Signals 11.2. Intercepting Shutdown Signals 11.3. Executing the Shutdown 12. User Model Setup and Registration 12.1. Setting up the Users Database Table 12.2. Setting up the Users Model 12.3. Registering a User 13. Sending Emails 13.1. SMTP Server Setup 13.2. Creating Email Templates 13.3. Sending a Welcome Email 13.4. Sending Background Emails 13.5. Graceful Shutdown of Background Tasks 14. User Activation 14.1. Setting up the Tokens Database Table 14.2. Creating Secure Activation Tokens 14.3. Sending Activation Tokens 14.4. Activating a User 15. Authentication 15.1. Authentication Options 15.2. Generating Authentication Tokens 15.3. Authenticating Requests 16. Permission-based Authorization 16.1. Requiring User Activation 16.2. Setting up the Permissions Database Table 16.3. Setting up the Permissions Model 16.4. Checking Permissions 16.5. Granting Permissions 17. Cross Origin Requests 17.1. An Overview of CORS 17.2. Demonstrating the Same-Origin Policy 17.3. Simple CORS Requests 17.4. Preflight CORS Requests 18. Metrics 18.1. Exposing Metrics with Expvar 18.2. Creating Custom Metrics 18.3. Request-level Metrics 18.4. Recording HTTP Status Codes 19. Building, Versioning and Quality Control 19.1. Creating and Using Makefiles 19.2. Managing Environment Variables 19.3. Quality Controlling Code 19.4. Module Proxies and Vendoring 19.5. Building Binaries 19.6. Managing and Automating Version Numbers

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors