Zadejte hledaný výraz...

Nesprávná odpověď serveru 204 NO_CONTENT

Vlasta
verified
rating uzivatele
25. 8. 2012 11:51:03
Ahojda všichni.
Potřeboval bych trochu píchnout s tímhle problémkem.
Mám script na kontrolu a generování kódu v odpovědi (pro placené SMS Airtoy).
Dělá co má, při obdržení správných parametrů odesílá také vše co má (200 OK, správný lenght, content-type atd.)
Při nesprávných parametrech či jiném problému má vrátit pouze:
204 NO_CONTENT
content-type=text/plain
lenght 0.
Problém je v tom, že když se nic na stránku nevypisuje (při chybě), měl by přeci server vracet 204 NO_CONTENT. On ale vrací pořád 200 OK.
Když dám do kódu header("HTTP/1.1 204 No Content");, rozhodí to hlavičky úplně.
Tady je scriptík.
Moc díky, už se s tím chvíli zlobím.
25. 8. 2012 11:51:03
https://webtrh.cz/diskuse/nespravna-odpoved-serveru-204-no_content#reply800634
acidclick
verified
rating uzivatele
25. 8. 2012 11:57:24
Ja to resim 301 na hlavni stranku a nemam s tim problem ani u Airtoy ani Zaypay :)
+ teda loguju vsechny requesty
25. 8. 2012 11:57:24
https://webtrh.cz/diskuse/nespravna-odpoved-serveru-204-no_content#reply800633
Vlasta
verified
rating uzivatele
25. 8. 2012 12:54:21
Takže tedy
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.example.com");
header("Connection: close");
exit;
25. 8. 2012 12:54:21
https://webtrh.cz/diskuse/nespravna-odpoved-serveru-204-no_content#reply800632
acidclick
verified
rating uzivatele
25. 8. 2012 12:57:09
tak tak :)
25. 8. 2012 12:57:09
https://webtrh.cz/diskuse/nespravna-odpoved-serveru-204-no_content#reply800631
Vlasta
verified
rating uzivatele
25. 8. 2012 13:32:49
No, já vycházím z toho co je v technické specifikaci Airtoy (mimochodem pěkně "obsáhlé") a z toho co mi ukazuje jejich testovací rozhraní.
Zrovna tohleto přesměrování hází chyby:
Chybný navrácený content-type. Musí být text/plain
Chybný formát odpovědi Vašeho serveru.
Nemám s nimi zkušenosti (s nikým v tomto smyslu) a nevím jak to u nich chodí.
V tech. s. píšou, že pokud server nedostane na volání odpověď buď 200+text nebo 204 tak opakuje volání takže by to tedy měli opakovat i při 301.
Mimo to 301 a přesměrování jim vlastně vrací kód index.html.
Jestli se to takhle dá ale omastit tak proč ne.
Stejně mi ale není pořád jasné, proč když je v kodu jenom:
header("HTTP/1.1 204 No Content");
header('Content-Type: text/plain; charset=UTF-8');
exit;
Vrátí to 204 - tedy v pořádku
a když se větvením scriptu dostanu na identický kód, který se vypíše což je nemlich to samé
vrátí to 200
D.
25. 8. 2012 13:32:49
https://webtrh.cz/diskuse/nespravna-odpoved-serveru-204-no_content#reply800630
acidclick
verified
rating uzivatele
25. 8. 2012 13:40:13
Jo vlastne neco v tech specifikach o 204 bylo, ale vim, ze to nepouzivam.
mrkni do requestu jestli treba se nevypise treba mezera nebo prazdnej radek, tim by se ten header mohl prepsat na 200.
25. 8. 2012 13:40:13
https://webtrh.cz/diskuse/nespravna-odpoved-serveru-204-no_content#reply800629
Vlasta
verified
rating uzivatele
25. 8. 2012 16:41:49
Už jsem na to přišel a jako vždy - chyba je mezi židlí a klávesnicí.
Žádné vypisování před hlavičkou, žádný BOM jenom moje blbost.
1. Když jsem to testoval z web-snifferu tak jsem zapoměl povolit další ip takže mi to padalo do větve, kde jsem ještě header(...204) neměl.
2. Testovací script Airtoy asi neumí validovat odpovědi jiné než 200 - povolenou chybu 204 označuje pravděpodobně za chybný status. Takže to pořád mátlo ze dvou stran, přitom to běží správně.
Díky za pozornost.
25. 8. 2012 16:41:49
https://webtrh.cz/diskuse/nespravna-odpoved-serveru-204-no_content#reply800628
Pro odpověď se přihlašte.
Přihlásit