<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Desain API on Nalar</title>
    <link>https://nalar.dev/id/tags/desain-api/</link>
    <description>Recent content in Desain API on Nalar</description>
    <generator>Hugo</generator>
    <language>id-id</language>
    <lastBuildDate>Sat, 19 Sep 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://nalar.dev/id/tags/desain-api/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Idempotency Key Mengikat Retry ke Satu Mutasi Logis</title>
      <link>https://nalar.dev/id/idempotency-key-mengikat-retry-ke-satu-mutasi-logis/</link>
      <pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://nalar.dev/id/idempotency-key-mengikat-retry-ke-satu-mutasi-logis/</guid>
      <description>&lt;p&gt;Client dapat kehilangan HTTP response setelah server melakukan commit terhadap mutasi yang diminta. Dari sisi client, status operasi belum pasti: koneksi gagal, tetapi kegagalan itu tidak menunjukkan apakah durable state sudah berubah. Retry terhadap &lt;code&gt;POST&lt;/code&gt; yang sama kemudian dapat membuat order, percobaan pembayaran, reservasi, atau mutasi lain untuk kedua kalinya.&lt;/p&gt;&#xA;&lt;p&gt;Idempotency key memberi retry sebuah identitas stabil yang terpisah dari satu percobaan transport tertentu. Server dapat mengaitkan request berulang yang membawa identitas tersebut dengan satu operasi logis. Mekanisme ini mempersempit ambiguitas pada batas API, tetapi key saja bukan jaminan. Scope, persistensi, perbandingan request, kontrol konkurensi, dan kebijakan replay menentukan arti sebenarnya dari pengiriman berulang.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Precondition ETag Mencegah Lost Write pada API Update HTTP</title>
      <link>https://nalar.dev/id/precondition-etag-mencegah-lost-write-api-update-http/</link>
      <pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://nalar.dev/id/precondition-etag-mencegah-lost-write-api-update-http/</guid>
      <description>&lt;p&gt;Dua client dapat membaca resource yang sama, mengedit field berbeda, lalu mengirim update dengan selang beberapa detik. Jika server menerima kedua write tanpa memeriksa representasi yang menjadi dasar edit masing-masing client, request yang datang belakangan dapat diam-diam menggantikan state dari write sebelumnya. Transport berhasil, tetapi aplikasi kehilangan perubahan konkuren.&lt;/p&gt;&#xA;&lt;p&gt;HTTP menyediakan mekanisme conditional request untuk batas ini. Server dapat menyertakan entity tag pada representasi, lalu client mengirim kembali tag tersebut melalui &lt;code&gt;If-Match&lt;/code&gt; saat mengajukan request yang mengubah state. Update hanya berjalan selama representasi yang dipilih masih memenuhi precondition yang diberikan.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
