206

Partial Content

Officiel
den anmodede del af ressourcen er blevet sendt. Anmodningen var vellykket.

Specifikation af HTTP-statuskode 206

Statuskoden 206 Partial Content angiver, at serveren med succes opfylder en rækkeviddeanmodning for målressourcen ved at overføre en eller flere dele af den valgte repræsentation, der svarer til de tilfredsstillende intervaller, der findes i anmodningens Range-headerfelt (afsnit 3.1).

Hvis en enkelt del overføres, SKAL serveren, der genererer 206 Partial Content-svaret, generere et Content-Range-headerfelt, der beskriver, hvilket område af den valgte repræsentation der er indeholdt, og en nyttelast, der består af området. For eksempel:

HTTP/1.1 206 Partial Content Partial Content
Date:

HTTP/1.1 206 Partial Content Partial Content
Date: Wed, 15 Nov 1995 06:25:24 GMT
Last-Modified: Wed, 15 Nov 1995 04:58:08 GMT
Content-Range: bytes 21010-47021/47022
Content-Length: 26012
Content-Type: image/gif

... 26012 bytes af delvise billeddata ...

Hvis der overføres flere dele, SKAL den server, der genererer 206 Partial Content-svaret, generere en "multipart/byteranges"-nytelast, som defineret i tillæg A, og et Content-Type-hovedfelt, der indeholder multipart/byteranges-medietypen og dens krævede grænseparameter. For at undgå forvirring med svar i en enkelt del må en server IKKE generere et Content-Range-hovedfelt i HTTP-header-sektionen af et svar i flere dele (dette felt sendes i stedet i hver del).

I header-området for hver bodypart i multipart-payload'en SKAL serveren generere et Content-Range-headerfelt svarende til det område, der er indeholdt i den pågældende bodypart. Hvis den valgte repræsentation ville have haft et Content-Type-hovedfelt i et 200 (OK)-svar, SKAL serveren generere det samme Content-Type-felt i hovedområdet for hver kropsdel.

Til eksempel:

HTTP/1.1 206 Partial Content Partial Content
Date: Wed, 15 Nov 1995 06:25:24 GMT
Last-Modified: Wed, 15 Nov 1995 04:58:08 GMT
Content-Length: 1741
Content-Type: multipart/byteranges; boundary=THIS_STRING_SEPARATES


--THIS_STRING_SEPARATES
Content-Type: application/pdf
Content-Range: bytes 500-999/8000


...den første række...
--THIS_STRING_SEPARATES
Content-Type: application/pdf
Content-Range: bytes 7000-7999/8000


...den anden række
--THIS_STRING_SEPARATES--

Når der anmodes om flere rækker, KAN en server samle alle de rækker, der overlapper hinanden, eller som er adskilt af et mellemrum, der er mindre end overheadet ved at sende flere dele, uanset i hvilken rækkefølge den tilsvarende byte-range-specifikation optrådte i det modtagne Range-headerfelt. Da det typiske overhead mellem dele af en multipart/byteranges-payload typisk er omkring 80 bytes, afhængigt af den valgte repræsentations medietype og den valgte grænseparameterlængde, kan det være mindre effektivt at overføre mange små adskilte dele end at overføre hele den valgte repræsentation.

En server MÅ IKKE generere et svar i flere dele på en anmodning om et enkelt interval, da en klient, der ikke anmoder om flere dele, muligvis ikke understøtter svar i flere dele. En server KAN imidlertid generere en multipart/byteranges-payload med kun en enkelt bodypart, hvis der blev anmodet om flere intervaller, og kun ét interval blev fundet tilfredsstillende, eller kun ét interval var tilbage efter sammenlægning. En klient, der ikke kan behandle et multipart/byteranges-svar, MÅ IKKE generere en anmodning, der beder om flere intervaller.

Når der genereres en payload for et multipart-svar, SKAL serveren sende delene i samme rækkefølge, som den tilsvarende byte-range-specifikation optrådte i det modtagne Range-headerfelt, idet de intervaller, der blev anset for utilfredsstillende, eller som blev samlet i andre intervaller, udelukkes. En klient, der modtager et svar med flere dele, SKAL inspicere Content-Range-hovedfeltet i hver enkelt kropsdel for at afgøre, hvilken rækkevidde der er indeholdt i den pågældende kropsdel; en klient kan ikke regne med at modtage de samme rækkevidder, som den anmodede om, eller den samme rækkefølge, som den anmodede om. Når der genereres et 206 Partial Content-svar, SKAL serveren generere f

Kilde / citat fra: HTTP-statuskoden 206 Partial Content er specificeret i afsnit 4.1 i RFC7233.

Hvordan får man en 206-statuskode med PHP?

Hvis du vil have HTTP-statuskoden 206 på en webside, kan du bruge PHP-funktionen http_response_code. Syntaksen er som følger: http_response_code(206) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Test 206 HTTP-statuskoden

For at kunne vise HTTP-statuskoden (i dette tilfælde 206 Partial Content) og andre oplysninger på klientsiden skal udviklingskonsollen åbnes med F12. Naviger derefter til fanen "Network" (netværk). Nu kan siden åbnes, hjemmesiden (eksempel index.php) skal være synlig i fanen netværk. Denne skal vælges, og derefter skal Herder-sektionen vælges. Brugeren vil derefter se følgende resultat:

Statuskode 206 Partial Content
Oversigt
URL: https://http-statuscode.com/errorCodeExample.php?code=206
Status: 206 Partial Content
Disse: Network
IP-adresse: XX.XX.XX.XX
Statuskode 206 Partial Content

Browserkompatibilitet for 206-statuskoden

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

Konstanter i programmeringssprog

http.StatusPartialContent
Response::HTTP_PARTIAL_CONTENT
:partial_content

Blog-artikler

SEO og HTTP-statuskoder: En omfattende analyse

Optimering af en hjemmeside til søgemaskiner (SEO) er en kompleks opgave. Et af de ofte oversete, men afgørende aspekter for en god placering er HTTP-statuskoder. Disse små, trecifrede koder inform...

Forfatter: Tony Brüser
Forfatter: Tony Brüser

Tony Brüser er en entusiastisk webudvikler med en forkærlighed for HTTP-statuskoder.

LinkedInGitHub