Byla vydána nová verze 19 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.
Bitwig Studio (Wikipedie) bylo vydáno ve verzi 6. Jedná se o proprietární multiplatformní (macOS, Windows, Linux) digitální pracovní stanici pro práci s audiem (DAW).
Společnost Igalia představila novou linuxovou distribuci (framework) s názvem Moonforge. Jedná se o distribuci určenou pro vestavěné systémy. Vychází z projektů Yocto a OpenEmbedded.
Google Chrome 146 byl prohlášen za stabilní. Nejnovější stabilní verze 146.0.7680.71 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 29 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
D7VK byl vydán ve verzi 1.5. Jedná se o fork DXVK implementující překlad volání Direct3D 3 (novinka), 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.
Bylo vydáno Eclipse IDE 2026-03 aneb Eclipse 4.39. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Ze systému Slavia pojišťovny uniklo přibližně 150 gigabajtů citlivých dat. Jedná se například o pojistné dokumenty, lékařské záznamy nebo přímou komunikaci s klienty. Za únik může chyba dodavatelské společnosti.
Sněmovna propustila do dalšího kola projednávání vládní návrh zákona o digitální ekonomice, který má přinést bezpečnější on-line prostředí. Reaguje na evropské nařízení DSA o digitálních službách a upravuje třeba pravidla pro on-line tržiště nebo sociální sítě a má i víc chránit děti.
Meta převezme sociální síť pro umělou inteligenci (AI) Moltbook. Tvůrci Moltbooku – Matt Schlicht a Ben Parr – se díky dohodě stanou součástí Meta Superintelligence Labs (MSL). Meta MSL založila s cílem sjednotit své aktivity na poli AI a vyvinout takovou umělou inteligenci, která překoná lidské schopnosti v mnoha oblastech. Fungovat by měla ne jako centralizovaný nástroj, ale jako osobní asistent pro každého uživatele.
Byla vydána betaverze Fedora Linuxu 44 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 14. dubna.
Zdravím!
Podle RFC2616 (8.2.3; 10.1.1 a 14.20.) je možné při HTTP POST/PUT(atd.), aby dříve, než klient pošle vlastní tělo žádosti na server, server otestoval podle hlaviček, zda-li obsah přijme nebo ne. Server pak může odpovědět pomocí "100 Continue" (v tom případě klient pokračuje v posílání těla žádosti), nebo hodit chybovou hlášku (např. "417 Precondition Failed"); v tom případě už klient nic neposílá.
Problém ovšem je, jak toho dosáhnout. Pokud použiji header() dvakrát, tj. jednou s kódem 100 a podruhé s jiným, pak při druhém použití fce header() prudí PHP s tím, že "headers already sent"...
Dá se s tím něco (rozumného) dělat?
Díky!
Jj, díky, pomohlo to, lépe řečeno, pomohlo bufferování nevypínat (lépe řečeno vypnout jenom to, co je potřeba). Nakonec, tohle funguje:
if ($_SERVER["HTTP_EXPECT"]=="100-continue" && $_SERVER["SERVER_PROTOCOL"]=="HTTP/1.1")
{
header("HTTP/1.1 100 Continue", false);
ob_flush();
}
Proč by to mělo být na h***? Pokud chce člověk korektně např. naimplementovat věci jako GroupDAV, pak ani jinou možnost nemá...
Jde o to, že zřejmě už posíláte nějaká data, třeba i nechtěně, a přitom nemusíte.
Momentálně tedy děláte něco takového:
Klient(GET/POST/PUT)-----------> Server Klient <--------------(hlavičky) Server Klient <-----------(nějaká data) Server Klient <--------(další hlavičky) Server Klient <------------------(data) Server
a chcete tohle:
Klient(GET/POST/PUT)-----------> Server Klient <--------------(hlavičky) Server Klient <--------(další hlavičky) Server Klient <------------------(data) Server
Ta "nějaká data" mohou být např. nechtěné odřádkovánínebo mezera v nějakém inkludovaném souboru (za posledním ?>) nebo nějaké echo nebo print ještě v první fázi práce skriptu, kdy ještě nechcete klientovi posílat data.
To je kravina, jak jsem psal, hlášku "header already sent" to píše pouze pokud použiji dvakrát po sobě header() se stavovým kódem, nikoliv když použiji header() jen jednou - což dokazuje, že data nikde mezitím neposílám. IMHO bude chyba někde v implementaci php...
header se třetím parametrem a replace nastaveným na true?
header('x', TRUE, 100);
header('x', TRUE, 200);
Mimochodem, odpověď 100-Continue můžete odpovědět jedině v případě, kdy klient pošle Expect: 100-continue.
Tiskni
Sdílej: