304

Not Modified

Oficialus
Išteklių nereikia persiųsti iš naujo, nes neįvyko jokių pakeitimų.

HTTP būsenos kodo 304 specifikacija

Būklės kodas 304 Not Modified rodo, kad buvo gauta sąlyginė GET arba HEAD užklausa ir būtų gautas 200 (OK) atsakymas, jei sąlyga nebūtų įvertinta kaip klaidinga. Kitaip tariant, serveriui nereikia perduoti tikslinio ištekliaus atvaizdavimo, nes užklausa rodo, kad klientas, pateikęs sąlyginę užklausą, jau turi galiojantį atvaizdavimą; todėl serveris nukreipia klientą naudotis tuo saugomu atvaizdavimu taip, tarsi tai būtų 200 (OK) atsakymo turinys.

Serveris, generuojantis 304 Not Modified atsakymą, PRIVALO generuoti bet kurį iš toliau nurodytų antraštės laukų, kurie būtų išsiųsti 200 (OK) atsakyme į tą pačią užklausą:

  1. Content-Location, Date, ETag ir Vary
  2. Cache-Control ir Expires (žr. [CACHING])

Kadangi 304 Not Modified atsakymo tikslas yra sumažinti informacijos perdavimą, kai gavėjas jau turi vieną ar daugiau talpyklose saugomų reprezentacijų, siuntėjas NEGALI generuoti kitų reprezentacijos metaduomenų, išskyrus pirmiau išvardytus laukus, išskyrus atvejus, kai šie metaduomenys yra skirti talpyklos atnaujinimams nukreipti (pvz.g., Last-Modified gali būti naudinga, jei atsakyme nėra ETag lauko).

Reikalavimai talpyklai, kuri gauna 304 Not Modified atsakymą, apibrėžti [CACHING] 4.3.4 skirsnyje. Jei sąlyginė užklausa gauta iš išeinančio kliento, pavyzdžiui, vartotojo agento, turinčio savo talpyklą ir siunčiančio sąlyginį GET bendram tarpiniam serveriui, tai tarpinis serveris TURI persiųsti 304 Not Modified atsakymą šiam klientui.

304 Not Modified atsakymą užbaigia antraštės skyriaus pabaiga; jame negali būti turinio ar priekabų.

Šaltinis / citata iš: HTTP būsenos kodas 304 Not Modified nurodytas 15.4.5 skirsnyje 15.4.5.

HTTP protokolas

nebaigtas darbas

Kaip naudojant PHP išmesti 304 būsenos kodą?

Norint žiniatinklio puslapyje nurodyti HTTP būsenos kodą 304, galima naudoti PHP funkciją http_response_code. Sintaksė tokia: http_response_code(304) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

HTTP būsenos kodo 304 testavimas

Kad kliento pusėje būtų galima rodyti HTTP būsenos kodą (šiuo atveju 304 Not Modified) ir kitą informaciją, kūrimo konsolę reikia atidaryti klavišu F12. Tada pereikite prie skirtuko "Network" (tinklas). Dabar galima atidaryti puslapį, tinklo skirtuke turi būti matoma svetainė (pavyzdys index.php). Ją reikia pasirinkti, o tada reikia pasirinkti skyrių Herder (Herderis). Tada naudotojas matys tokį rezultatą:

Būsenos kodas 304 Not Modified
Apžvalga
URL: https://http-statuscode.com/errorCodeExample.php?code=304
Statusas: 304 Not Modified
Šie: Network
IP adresas: XX.XX.XX.XX
Būsenos kodas 304 Not Modified

304 būsenos kodo suderinamumas su naršyklėmis

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes
Safari Yes
Chrome Android Yes
Firefox for Android Yes
Opera Android Yes
Safari on iOS Yes
Internet Yes
WebView Android Yes

Konstantos programavimo kalbose

http.StatusNotModified
Response::HTTP_NOT_MODIFIED
:not_modified

Išorinės nuorodos, kuriose pateikiama daugiau informacijos apie HTTP būsenos kodą 304:

Tinklaraščio straipsniai

Spartinančioji atmintinė ir HTTP būsenos kodai: Žiniatinklio našumo optimizavimas naudojant pažangią spartinančiąją talpyklą

Tinklalapio našumas ir su juo susijusi naudotojo patirtis yra svarbiausi bet kurios svetainės sėkmės aspektai. Svarbus veiksnys, turintis įtakos šiam našumui, yra HTTP būsenos kodai, ypač atsižvelg...

Autorius: Tony Brüser
Autorius: Tony Brüser

Tony Brüseris yra entuziastingas žiniatinklio kūrėjas, mėgstantis HTTP būsenos kodus.

LinkedInGitHub