http
Package http provides an Express-like HTTP server on chi. Node equivalent: express, cors, helmet, morgan (Logger middleware), multer (ParseMultipart), express-session (SessionMiddleware), Server-Sent Events (SSE), express-rate-limit (RateLimit).
import "github.com/sahilkhaire/gox/http"
Select a symbol below — each page explains what it does, shows Node.js vs Go comparisons, and includes a runnable example.
Functions
| Symbol | Node.js | Kind | Summary |
|---|---|---|---|
| SaveUploadedFile | — | func | SaveUploadedFile saves an uploaded file to destPath. |
Types
| Symbol | Node.js | Kind | Summary |
|---|---|---|---|
| App | — | type | App is the root HTTP application (Express app). |
| CORSOptions | — | type | CORSOptions configures the CORS middleware. |
| Ctx | — | type | Ctx wraps a single HTTP request and response. |
| EventStream | — | type | EventStream sends Server-Sent Events. |
| Handler | — | type | Handler is an Express-style handler that returns an error for centralized handling. |
| MemoryStore | — | type | MemoryStore is an in-memory session store (express-session memory). |
| Middleware | — | type | Middleware wraps the next handler in the chain. |
| MultipartForm | — | type | MultipartForm wraps a parsed multipart form. |
| RateLimitOptions | — | type | RateLimitOptions configures per-key rate limiting (express-rate-limit). |
| SessionOptions | — | type | SessionOptions configures session middleware. |
| SessionStore | — | type | SessionStore persists session data. |
| WSHandler | — | type | WSHandler handles a WebSocket connection in an Express-style handler. |
Methods
| Symbol | Node.js | Kind | Summary |
|---|---|---|---|
| Middleware.CORS | cors | method | CORS adds Cross-Origin Resource Sharing headers. |
| Middleware.Logger | morgan | method | Logger logs each request with slog (morgan-style). |
| App.New | express() | method | New creates a new App with a fresh chi router. |
| MemoryStore.NewMemoryStore | — | method | NewMemoryStore creates a memory session store. |
| MultipartForm.ParseMultipart | — | method | ParseMultipart parses a multipart request (multer). |
| Middleware.RateLimit | express-rate-limit | method | RateLimit returns middleware that limits requests per key. |
| Middleware.Recover | — | method | Recover catches panics and returns 500. |
| EventStream.SSE | — | method | SSE prepares the response for server-sent events. |
| Handler.SSEHandler | — | method | SSEHandler runs fn with an EventStream (Express-style handler). |
| Middleware.Security | helmet | method | Security sets common security headers (helmet-style). |
| Middleware.SessionMiddleware | — | method | SessionMiddleware loads and saves session data on each request. |