Mert Özen Further With Every Line

Blog

Mert Özen's blog posts on software development, backend, frontend, and DevOps.

Series
4 posts found #http
HTTP Caching: Cache-Control, ETag, 304 Not Modified and Vary to Spare the Server
Backend PART 05

HTTP Caching: Cache-Control, ETag, 304 Not Modified and Vary to Spare the Server

The HTTP cache is driven by headers, not the server: while max-age holds the request never arrives, and afterwards an ETag request gets a bodiless 304. In our test the menu's second request came from the browser with 0 bytes, and Angular HttpClient saw the 304 as a 200. Behind nginx, a book response without Vary gave an English user the Turkish price, and a cart marked public showed Bob Alice's cart.

8 Nov 2026 13 min 4
The Security Lab: A Bookstore API with ASP.NET Core 10 and Reading HTTP with curl
Security PART 02

The Security Lab: A Bookstore API with ASP.NET Core 10 and Reading HTTP with curl

We set up the lab for the rest of the series: an ASP.NET Core 10 minimal API on SQLite. With curl -i we read methods, status codes, headers and cookies through a security lens, see how the same error reaches the client differently in Development and Production, and cover the HTTPS development certificate and the lab rules.

6 Nov 2026 11 min 15
What Is an ASP.NET Core Web API? HTTP and REST Fundamentals
Backend PART 01

What Is an ASP.NET Core Web API? HTTP and REST Fundamentals

We meet the Web API through the HTTP window: request and response anatomy, methods and idempotency, status code families and resource-oriented URLs. We also lay out the series: a .NET 6 core, then version posts.

4 Nov 2026 9 min 35
JavaScript Fetch API: GET, POST, response.ok, Timeouts and an Intro to CORS
Frontend PART 11

JavaScript Fetch API: GET, POST, response.ok, Timeouts and an Intro to CORS

We fetch and send data with the Fetch API and see why a 404 skips catch, how response.ok helps, POST/PUT/DELETE, timeouts with AbortSignal.timeout, CORS, and showing loading and error states.

3 Nov 2026 9 min 31
Blog Map