You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Podľa apache/gunicorn access logu máme veľa 405 errorov, z čoho veľká časť sú requesty "POST /?action=mojeSkusky" a podobne. User agent je vždy Safari na iOS alebo macOS.
Môže za to Safari bug https://bugs.webkit.org/show_bug.cgi?id=202963. Viď tiež https://stackoverflow.com/q/46933389. Keď zavoláš history.replaceState() na stránke ktorá prišla ako POST, Safari si stále bude pamätať že je POST a aké bolo telo requestu, len na inej url. Ak užívateľ refreshne, Safari pošle POST so starým telom na novú url. Ostatné prehliadače pri history.replaceState() zmenia metódu na GET a telo zahodia.
bol aj starší bug https://bugs.webkit.org/show_bug.cgi?id=76721 ktorý fixli pred Blink forkom, ale bohužiaľ sa týka iba volania location.reload() apod, nie keď užívateľ manuálne refreshne
za čias týchto dvoch bugov spec jasne vravel že z POST sa má stať GET, ale odvtedy sa spec tisíckrát skomplikoval a teraz už tam nič také neviem nájsť, takže čisto technicky vzaté, kto vie kto má vlastne "pravdu"
Náš problém začal pri prechode na SAML, lebo "POST /saml_acs" priamo renderuje app_response.
Tým pádom asi musíme prestať používať history.replaceState() a začať robiť klasický POST-redirect-GET.
The text was updated successfully, but these errors were encountered:
Podľa apache/gunicorn access logu máme veľa 405 errorov, z čoho veľká časť sú requesty "POST /?action=mojeSkusky" a podobne. User agent je vždy Safari na iOS alebo macOS.
Môže za to Safari bug https://bugs.webkit.org/show_bug.cgi?id=202963. Viď tiež https://stackoverflow.com/q/46933389. Keď zavoláš history.replaceState() na stránke ktorá prišla ako POST, Safari si stále bude pamätať že je POST a aké bolo telo requestu, len na inej url. Ak užívateľ refreshne, Safari pošle POST so starým telom na novú url. Ostatné prehliadače pri history.replaceState() zmenia metódu na GET a telo zahodia.
Unfun facts:
Náš problém začal pri prechode na SAML, lebo "POST /saml_acs" priamo renderuje app_response.
Tým pádom asi musíme prestať používať history.replaceState() a začať robiť klasický POST-redirect-GET.
The text was updated successfully, but these errors were encountered: